home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / OBV230-F.ZIP / OBV.DOC < prev   
Text File  |  1995-07-19  |  301KB  |  6,385 lines

  1.           
  2.           
  3.           
  4.           
  5.           
  6.           
  7.           
  8.           
  9.           
  10.           
  11.           
  12.           
  13.           
  14.           
  15.           
  16.           
  17.           
  18.           
  19.           
  20.           
  21.           
  22.           
  23.           
  24.           
  25.           
  26.           ┌───────────────────────────────────────────────────────────┐
  27.           │                                                           │
  28.           │                                                           │
  29.           │             Oblivion/2 Bulletin Board System              │
  30.           │                       Version 2.30                        │
  31.           │                                                           │
  32.           │ Copyright (C) 1991-1995 Darkflame Enterprises.            │
  33.           │ All rights reserved. No part of this documentation may    │
  34.           │ be altered without the consent of Darkflame Enterprises.  │
  35.           │                                                           │
  36.           │ Written by: Eric Katz  (Referred to as Darkened Enmity)   │
  37.           │           : Rony Daher (Referred to as Lord Tracer)       │
  38.           │ Documentation: Rony Daher                                 │
  39.           │              : Morten Mertner                             │
  40.           │              : Guy Rotowski                               │
  41.           │                                                           │
  42.           └───────────────────────────────────────────────────────────┘
  43.           
  44.           
  45.           
  46.           
  47.           
  48.           
  49.           
  50.           
  51.           
  52.           
  53.           
  54.           
  55.           
  56.           
  57.           
  58.           
  59.           
  60.           
  61.           
  62.           
  63.           
  64.           
  65.           
  66.           
  67.           
  68.                                 TABLE OF CONTENTS
  69.                                 ─────────────────
  70.           
  71.           LEGAL INFORMATION                                 1
  72.           
  73.           GENERAL OVERVIEW                                  1.1
  74.           
  75.           REGISTRATION                                      1.2
  76.           
  77.           FOR THE BEGINNING SYSOP                           1.3
  78.  
  79.           ACS SYSTEM                                        2
  80.           
  81.           CONFIGURATION PROGRAM                             3
  82.           
  83.           MENUCODE/STATCODE/MAKEPROM/MAKEHELP               4
  84.           
  85.           DATA AREA CONFIGURATION                           5
  86.           
  87.           CONFERENCE EDITOR                                 6
  88.           
  89.           SYSOP ONLINE FUNCTIONS                            7
  90.           
  91.           INFOFORMS                                         8
  92.           
  93.           MAKING REPEAT ANSIS                               9
  94.           
  95.           MAKING STANDARD ANSIS                            10
  96.           
  97.           MCI CODES / SYSOP CONFIGURABLE TEXTFILES         11
  98.           
  99.           CONFIGURABLE CHAT                                12
  100.           
  101.           MENU EDITOR                                      13
  102.           
  103.           MESSAGE / FILE BASE SETUP                        14
  104.           
  105.           UPLOAD CHECKER                                   15
  106.           
  107.           CONFIGURABLE ARCHIVERS                           16
  108.           
  109.           GENERIC MENU CONFIGURATION                       17
  110.           
  111.           FUNCTIONS OF ANSI.SYS                            18
  112.           
  113.           SETTTING UP WITH OS/2                            19
  114.           
  115.           USING E-MAIL TAGS                                20
  116.           
  117.           
  118.           
  119.           
  120.           
  121.           
  122.           
  123.            
  124.           
  125.           
  126.           
  127.           
  128.           
  129.           
  130.           
  131.           
  132.           
  133.           
  134.           
  135.           
  136.                            SECTION 1: LEGAL INFORMATION
  137.                            ────────────────────────────
  138.           
  139.                Darkflame Enterprises grants to the Purchaser and
  140.           Purchaser accepts a nontransferable and non-exclusive license
  141.           to use,  on a single computer, the Software Products and
  142.           accompanying materials provided to Purchaser by Darkflame
  143.           Enterprises. Purchaser is hereby licensed only to read the
  144.           program from its medium into the memory of  a single
  145.           computer solely for the purpose of executing the program.
  146.           Darkflame Enterprises shall have the right to terminate this
  147.           license if purchaser violates any of its provisions.
  148.           Purchaser agrees that the Software Products and accompanying
  149.           materials are  the property of Darkflame Enterprises and that
  150.           Darkflame Enterprises shall maintain title to and ownership
  151.           of the Software Products at all times.  Purchaser agrees to
  152.           make no more than one (1) additional working copy and one (1)
  153.           backup copy of the Software Products for personal use only.
  154.           Except as indicated above, the Software Products may not, in
  155.           whole or part, be copied, reproduced, translated, or
  156.           distributed to other parties.
  157.           
  158.                Darkflame Enterprises makes  no warranties of any kind,
  159.           expressed or implied, with respect to the quality,
  160.           performance, accuracy, or fitness of the Software Products
  161.           for any particular purpose.  Darkflame Enterprises assumes no
  162.           responsibility for any decisions made or actions taken on the
  163.           part of the Purchaser because of the use  of the Software
  164.           Products.  In no event shall Darkflame Enterprises, or any of
  165.           its representatives, be liable for any loss of profit or any
  166.           other damages, including but not limited to special,
  167.           incidental, consequential or other damages, arising
  168.           out of the use or inability to use this product -even if
  169.           Darkflame Enterprises or an authorized agent of such has been
  170.           advised of the possibility of such damages -or for any claim
  171.           by any other party.
  172.           
  173.           
  174.                           SECTION 1.1: GENERAL OVERVIEW
  175.                           ─────────────────────────────
  176.           
  177.                Oblivion/2 BBS was designed with two things in mind: The
  178.           SysOp, and the user. This bulletin board program attempts to
  179.           give the best of both worlds: Power for the SysOp, and ease
  180.           of use for the user. With the unique menu editor, and
  181.           configurable ACS system, the power is present. The
  182.           possibility for change gives the SysOp his power, while also
  183.           giving the user an easy interface for operations.
  184.           
  185.           List of major features:
  186.           
  187.           o    Powerful menu editor. Allows for configuring all aspects
  188.                of the BBS.
  189.           o    Configurable String editor. No more internal strings.
  190.                Add a personal touch to your BBS!
  191.           o    Optimized for increased speed. Runs fast on any machine!
  192.           o    Support for multiple menu sets.
  193.           o    Support for multiple stat screen sets.
  194.           o    Echomail/Netmail Compatible.
  195.           o    Configurable Data Area System. Create your own
  196.                BBS/VMB/NUA listing, and configure them any way you
  197.                wish. Similar to an online database, but completely
  198.                configurable.
  199.           o    Support for SR/PCBOARD.SYS/CHAIN.TXT door file formats.
  200.           o    Support for up to 255 separated message/file
  201.                conferences.
  202.           o    Support for multiple prompts. User selectable.
  203.           o    Integrated upload checking system! Checks all uploaded
  204.                files for CRC, viruses, and runs age tests. Also
  205.                includes ability for additional SysOp specified
  206.                maintainence to uploaded files!
  207.           o    Support for multiple, SysOp configurable archivers!
  208.                Anything on the BBS can be packed and unpacked in your
  209.                favorite archive type. Also includes automatic archive
  210.                signature recognition. The BBS knows what type of
  211.                archiver a file was packed in w/o looking at its
  212.                extension!
  213.           o    Advanced user editor with integrated searching
  214.                functions!
  215.           o    Parameter editor for easy control and maintenance of
  216.                user levels!
  217.           o    Advanced online RIP graphics support for transmitting
  218.                graphic images over the modem.
  219.           o    Configurable Generic Menu system. No longer do SysOps
  220.                have to edit menus when they change commands. With the
  221.                generic menus, the BBS can do your editing for you.
  222.           
  223.           
  224.                             SECTION 1.2: REGISTRATION
  225.                             ─────────────────────────
  226.           
  227.                Registration of Oblivion/2 is simple. All of our
  228.           registrations are handled through our HQ support system. This
  229.           system, The Fringes, can be reached at 216-464-4856.
  230.  
  231.                The registration fee for Oblivion/2 is $50 US payable
  232.           in either a cashier check or money order. Please fill and
  233.           print out a copy of ORDER.FRM (available with the distribution
  234.           ZIP or from the Fringes). Include the form with your registration
  235.           fee.
  236.  
  237.                Please send registration to the following address:
  238.  
  239.                                 Rony Daher
  240.                                 PO BOX 43364
  241.                                 Cleveland, OH 44143-0364
  242.                                                 USA
  243.  
  244.                Make checks payable to:  Rony Daher
  245.  
  246.                To clear up certain things about registration, keep
  247.           these things in mind:
  248.           
  249.           o    A completed ORDER.FRM MUST be sent with your order.
  250.           o    Personal checks are NOT accepted. If you send one, your
  251.                order will be returned. Please send a cashier check or a
  252.                money order.
  253.           o    You cannot transfer your registration to a friend. All
  254.                registrations are handled with us.
  255.           o    Please do NOT send Canadian Postal money orders. They're
  256.                hard to cash.
  257.           o    If you're registering overseas, or anywhere outside of
  258.                the US & Canada, make sure to get your money order from
  259.                a larger bank. Smaller chains are VERY hard to cash
  260.                here. For Europeans and Australians, Citibank seems to
  261.                work well.
  262.           o    If your handle on the Fringes is different than the
  263.                SysOp name which you are using for your BBS, please
  264.                indicate this somewhere on your ORDER.FRM. If you
  265.                fail to do this, your registration may be delayed.
  266.           o    Once you are validated on the Fringes, you are free
  267.                to register at any time. You need not get any sort
  268.                of approval as in previous release versions.
  269.  
  270.  
  271.                Registration is handled through a serial number system.
  272.           When we validate your registration, you will receive a ZIP
  273.           containing a textfile named SERIAL.NUM. Inside this textfile,
  274.           you'll find a BBS Name, BBS SysOp, and a 20-digit serial
  275.           number. Enter that information in your Obv/2 config EXACTLY
  276.           as they appear in the SERIAL.NUM. If the information is not
  277.           correct, the BBS will not register.
  278.           
  279.                Should you lose your SERIAL.NUM, please contact any
  280.           member of the Oblivion/2 staff, and a new one will be made
  281.           available to you.
  282.           
  283.                If you decide to distribute your SERIAL.NUM file, a
  284.            beta version of Oblivion/2, or anything reserved for registered
  285.            SysOps only, your registration will be immediately cancelled.
  286.            No questions asked. No refunds given. No exceptions made.
  287.           
  288.                If you wish to get in contact with the Oblivion/2 team,
  289.           please mail us on The Fringes, or at this address. Due to the
  290.           large amount of mail received, we cannot guarentee replies.
  291.           
  292.  
  293.           Oblivion/2 Team
  294.           Post Office Box 43364
  295.           Cleveland, Ohio  44143-0364
  296.                                USA
  297.  
  298.  
  299.                     SECTION 1.3: FOR THE BEGINNING SYSOP
  300.                     ────────────────────────────────────
  301.  
  302.                This section has been designed to provide general information
  303.           for a SysOp who is not familiar with the basic operations of
  304.           Oblivion/2. If you are an advanced user, or have more than the
  305.           basic knowledge and understanding of the software, skip this
  306.           section.
  307.  
  308.           (1) The DSZLOG - If you're new to SysOping or new to Oblivion/2
  309.           you might encounter the error "Set the DSZLOG to C:\OBV\DSZLOG.1"
  310.           or an equivelant. The DSZLOG is a textfile which logs the
  311.           activity of one of Oblivion/2's support programs, DSZ.COM. DSZ
  312.           is used by Oblivion/2 for X/Y/Zmodem Transfers. The BBS reads
  313.           this DSZLOG file following a transfer in order to determine
  314.           the status of the transfer. You see this in the upload/download
  315.           status screen (displayed just after you upload or download.)
  316.           If this setting is not present, Obv/2 will not run. The DSZLOG
  317.           is set by adding the line "SET DSZLOG=C:\OBV\DSZLOG.1" into
  318.           your AUTOEXEC.BAT, or a batch file that runs Oblivion/2.
  319.           Replace "C:\OBV\DSZLOG.1" with the value that Oblivion/2 gives
  320.           you.
  321.  
  322.           (2) Batch Oriented File System - Oblivion/2's file system is
  323.           known as a batch oriented file system. This means that you
  324.           are able to do operations on many files at once. Operations
  325.           include downloading, uploading, typing, moving, deleting,
  326.           changing, getting information on, and so forth. Almost all
  327.           of Oblivion/2's file functions are designed with this sense of
  328.           a batch. In order to utilize these powerful tools, you must
  329.           create a batch of files. Do this by selecting files (using your
  330.           up/down arrow keys, or the numbers 8/2 for up/down respectively)
  331.           Once a batch has been created, you can execute one of the many
  332.           batch functions (download, move, type etc.) and all of the files
  333.           in the batch will be downloaded, moved etc. You can also create
  334.           a batch by using wildcards or entering individual filenames.
  335.           You may do this at a prompt similar to this (prompts may be
  336.           different if SysOp has modified them).
  337.  
  338.           You may download up to 50 files
  339.  
  340.           Enter Filenames:
  341.  
  342.           When you get a prompt similar to this, you have several options.
  343.           You can enter a filename, a wildcard or a number/range of numbers.
  344.           The numbers correspond to the ones shown to the left of the
  345.           filename in the file listing. Enter a range such as 10-15, and
  346.           files 10 through 15 will be tagged for a download. Other batch
  347.           operations operate in the same fashion. This batch oriented file
  348.           system gives Oblivion/2 the flexibility and power that both
  349.           SysOps and Users can appreciate.
  350.  
  351.           (3) The menu hierarchy - The default menu setup that comes
  352.           with Oblivion/2 has been divided for an ease of use for
  353.           the SysOp and user. In order to keep things neat, and keep
  354.           related commands together, we have divided the menus into
  355.           two different types. The first type is known as a user menu,
  356.           and the second known as a Sponsor menu. The user menus contain
  357.           commands accessable to ordinary users, and the Sponsor menus
  358.           contain commands that are used to maintain said areas, and
  359.           should only be executed by those of high security levels.
  360.  
  361.           I will illustrate a few menus and associated Sponsor menus
  362.           so that you can better understand the reason for dividing
  363.           them. The file menu contains commands like "Newsan Files"
  364.           "Upload Files" "Download Files" "Get Information on Files" etc.
  365.           The file Sponsor menu contains commands such as "Reorder File
  366.           Bases" "Offline Cleanup" "Make File Areas" etc. As you can see
  367.           the sponsor menu contains functions that are available to SysOp.
  368.  
  369.           (4) Creating the NEWS message base - SysOps can use NEWS to
  370.           convey important information to their users. Before you can
  371.           create this base, you need to know how to create a message area.
  372.           Section 14 of this document contains information on creating
  373.           message bases. Follow those instructions on the creation of
  374.           the base, but make sure that the option "Mandatory" is set to
  375.           ON. This will force the BBS to newscan the message base upon the
  376.           user's login. When you post a new message in this base, all
  377.           people with access will see the new message. You can create
  378.           more than one news base, and give each of them different ACS.
  379.           Users will have to have the specified ACS to view the new
  380.           news messages.
  381.  
  382.                               SECTION 2: ACS SYSTEM
  383.                               ─────────────────────
  384.           
  385.               ACS, or Access Conditioning System, has become a reality
  386.           for many BBS programs being produced today. With ACS you can
  387.           allow and restrict user's access to a certain area to the
  388.           board based not only on level but on Baud Rate, Time Left,
  389.           Number of File Points and much more. In essence, ACS
  390.           offers the SysOp "Total Control" of his system.
  391.           
  392.               Before any SysOp can use the ACS System, it must be known
  393.           it can get very complicated (as you will see).  It can become
  394.           a programming language in itself.  So if your access doesn't
  395.           go as planned the first time, continue to experiment until
  396.           you find the results you are looking for.
  397.           
  398.           The following is a list of valid ACS Commands:
  399.           
  400.           
  401.           
  402.           Flag                   Description
  403.           ─────────────────────────────────────────────────────────────
  404.           -                      False
  405.           +                      True
  406.           SXXXX                  True if Level Greater or equal to X.
  407.           VX                     True if user is on Node X.
  408.           DXXXX                  True if File Level Greater or equal to
  409.                                  XXXX.
  410.           EX                     True if user called more than X times
  411.                                  today.
  412.           BXXX                   True if BPS Rate (w/o 00's) is Greater
  413.                                  or equal to XXX. (ie:3, 12, 24, 48,
  414.                                  96, 144, 168, 192, 384)
  415.           CXXX                   True if user hasn't changed his password
  416.                                  in xxx days.
  417.           FX                     True if X flag is set. (A-Z)
  418.           HX                     True if user is using menu set X.
  419.           IX                     True if user is using stat set X.
  420.           JX                     True if user has ANSI and X=0, or
  421.                                  user has AVATAR and X=1, or if user
  422.                                  has RIP and X=2.
  423.           OX                     True if flag X is set in the second
  424.                                  group of ACS Flags. (A-Z)
  425.                                  See *** Note following commands.
  426.           PXX                    True if user has XX file points.
  427.           YXXX                   True if it is at least XXX minutes
  428.                                  past midnight.
  429.           ()'s                   Tells Obv/2 to Process Codes in
  430.                                  parenthesis before any other codes.
  431.           |                      Used to "Or" what is on the left
  432.                                  side of the | with what is on the
  433.                                  right side of the |.
  434.           ~                      Makes a Code False that would
  435.                                  otherwise be true and vice versa.
  436.           \                      True if Fail Flag is True.
  437.           =                      True if user is local.
  438.           [                      True only when system is run
  439.                                  multinode.
  440.           ;                      True if input is not broken using
  441.                                  space or ESC.
  442.           '                      Used to prompt for SysOp password.
  443.           KX                     True if absolute file area # is equal
  444.                                  to value of X.
  445.           LX                     True if absolute message area # is
  446.                                  equal to value of X.
  447.           MX                     True if MSG conference is equal
  448.                                  to the value of X.
  449.           NX                     True of FILE conference is equal
  450.                                  to the value of X.
  451.           PXXXX                  True if # of file points is greater
  452.                                  than the value of XXXX.
  453.           TXXXX                  True if time left is greater than
  454.                                  the value of X.
  455.           UXXXX                  True if the user # is equal to X.
  456.           AXX                    True of age is greater than XX.
  457.           GX                     True if user is male (X must be
  458.                                  0), or user is female (X must be 1)
  459.           QX                     True after user has called more than X
  460.                                  times
  461.           RX                     True if total calls exceed X.
  462.           *                      True if user meets his Post/Call
  463.                                  Ratio
  464.           Xyyy                   True of the first three #s of the
  465.                                  user's phone number match. ie:
  466.                                  A216 holds true for all users
  467.                                  who's area code is 216. A216464 holds
  468.                                  true for all users who's number is in
  469.                                  area code 216 and prefix 464.
  470.           Zx                     True if Day of the Week = X
  471.                                  0=Sunday...6=Saturday
  472.           _                      True if user is available for
  473.                                  Multinode Chat
  474.           $xx                    True if the user has changed his
  475.                                  password in xx days. ie: $10 is
  476.                                  true if the user changed his
  477.                                  password more than 10 days ago.
  478.           ]                      True if screen pausing is on
  479.  
  480.  
  481.           The Following are a few examples of the ACS System:
  482.           
  483.           ~U2                    - Creates a base that can be accessed
  484.                                    by everyone EXCEPT User #2.
  485.           S20D20                 - Creates a base that anyone can
  486.                                    access as long as their main/file
  487.                                    levels are greater/equal to 20.
  488.           Y120                   - Creates a Base that will open after
  489.                                    2:00 am and close at 11:59 pm.
  490.           y60~y120               - Creates a base that will be open
  491.                                    from 1am to 2am.
  492.           =S255                  - Creates a base that can only be
  493.                                    accessed via the local terminal, AND
  494.                                    the user online must have a security
  495.                                    level of 255.
  496.           P100|S50               - Creates an option that can be
  497.                                    accessed only
  498.                                    if the user has 100 or more file
  499.                                    points, OR if the user has a
  500.                                    security level of 50 or greater.
  501.           T90|FABC               - Creates an option that can only be
  502.                                    used if the user has 90+ minutes of
  503.                                    time, OR if he has flags A,B,C set.
  504.           B144|FA                - Creates an option that can be
  505.                                    accessed only by someone who has a
  506.                                    14.4k or better modem, OR if the
  507.                                    user has flag A set.
  508.           A18G0                  - True if the user is male, and 18 or
  509.                                    over.
  510.           A18G1                  - True if the user is female, and is
  511.                                    18 or over.
  512.           s20d20~U2|(U2Y60~Y120) - Creates a base that will allow
  513.                                    anyone except user #2 who has both a
  514.                                    Main Level and Transfer Level
  515.                                    Greater than or equal to 20 OR Allow
  516.                                    User #2 to access this base from 1am
  517.                                    to 2am.
  518.  
  519.           ***  There are 2 separate sets of ACS flags. Use the Fx ACS
  520.           Command to access the first set of ACS Flags, and use the Ox
  521.           ACS flag to access the second set of ACS Flags. Both sets of
  522.           flags can be toggled on and off in two ways. First, both
  523.           sets of ACS flags can be toggled on/off with the user editor.
  524.           The second way to toggle these flags on/off is by use of the
  525.           following menu commands.
  526.  
  527.           To adjust flags in set 1:
  528.  
  529.           Command Key: -S
  530.           Function   : Toggles on/off flag in CString
  531.           CString    : +x (turns on flag x) or -x (turns off flag x)
  532.  
  533.           To adjust flags in set 2:
  534.  
  535.           Command Key: -Y
  536.           Function   : Toggles on/off flag in CString
  537.           CString    : +x (turns on flag x) or -x (turns off flag x)
  538.           
  539.           
  540.                                  SECTION 3: CONFIGURATION PROGRAM
  541.                                  ────────────────────────────────
  542.           
  543.                In version 2.0 and later, the configuration program is
  544.           now an active part of the BBS.  No longer do you have to exit
  545.           the BBS, and run a large, clunky config, but you can do all
  546.           of your configuration needs online.
  547.           
  548.                The configuration program has a number of global
  549.           commands. To Clear a field, use the CTRL-Y command, to
  550.           advance to the next option, use either your arrow keys, or
  551.           your ENTER key. To enter into insert mode, or to exit
  552.           from it, use the CTRL-V option. To end configuration from a
  553.           certain menu, use CTRL-Z (Unless otherwise told).
  554.           
  555.                Each Section of the configuration program covers a
  556.           different aspect of the BBS. Use your arrow keys to navigate
  557.           throughout the config.
  558.           
  559.                In the next part of this section, certain commands in
  560.           the configuration program will be explained in detail.
  561.           Commands that are obvious, will be skipped.
  562.           
  563.           System Information:
  564.           
  565.           Multinode Operation  - If you plan to run your system with
  566.                                  multiple nodes, select yes for this
  567.                                  option.
  568.           Node Number          - This is the node number for the
  569.                                  current node. Leave this at 1 if you
  570.                                  do not plan on running more than
  571.                                  one node.
  572.           Mins to Time Out     - This value (in minutes) will tell the
  573.                                  BBS when to hang up if there has been
  574.                                  no keypresses from the remote side.
  575.           Days to save log     - This number (in days) tells the BBS
  576.                                  how long to save the system log. The
  577.                                  log will automatically be purged after
  578.                                  that number of days. This is primarily
  579.                                  a security feature.
  580.           Lines of Scrollback  - This number tells the BBS how many
  581.                                  lines of text to save in the
  582.                                  scrollback buffer. This buffer can be
  583.                                  accessed via the F4 SysOp command, and
  584.                                  is used to view any text/ansi that
  585.                                  scrolled off the screen. The higher
  586.                                  you make this number, the more memory
  587.                                  you'll need.  If you make the number
  588.                                  too high, your system will crash with
  589.                                  an ERROR 203. Should this happen,
  590.                                  lower this number!
  591.           Page Times           - This number tells the BBS how many
  592.                                  times to allow the user to page the
  593.                                  SysOp. If he pages more than this
  594.                                  amount of times, a textfile,
  595.                                  ENOUGH.ANS, will be printed.
  596.           QWKName              - (Max 8 letters, no extension) This is
  597.                                  the filename
  598.                                  that your BBS will generate when a
  599.                                  user creates a QWK packet for
  600.                                  download. ie: OBV2 would make a packet
  601.                                  called OBV2.QWK.
  602.           BIOS Writes          - If this option is Yes, then screen
  603.                                  writes will be handled through the
  604.                                  BIOS. This is very slow, but may
  605.                                  sometimes be needed if you have
  606.                                  multitasking problems.  For normal
  607.                                  operations, change this to No.
  608.           Use MAINTAIN.BAT     - Read the section on the upload checker
  609.                                  for information on this batch file.
  610.           Starting Menu        - After the BBS finishes with the
  611.                                  MATRIX.MNU file (your matrix), which
  612.                                  menu should it then go to. This option
  613.                                  tells Obv/2.  Do not include a .MNU
  614.                                  extension; That is assumed.
  615.           Use Status Bar       - If you wish to use the status bar,
  616.                                  turn this option on.  If not, keep it
  617.                                  off. The status bar is located on line
  618.                                  25 of your local screen. It gives
  619.                                  important user info on the current
  620.                                  user. There are three different parts
  621.                                  to the bar. Toggle all of these by
  622.                                  using ALT-B. You can also turn off
  623.                                  your status bar at anytime by using
  624.                                  ALT-B.
  625.           
  626.           System Information 2
  627.           
  628.           Data Library Ansis   - Tells the BBS if the ansis for data
  629.                                  areas are in the current status screen
  630.                                  library, or if they're in the textfile
  631.                                  directory. Yes = Ansis in status
  632.                                  library, and No = Ansis are in
  633.                                  textfile directory. Note: If you enter
  634.                                  yes for this field, and the ansis are
  635.                                  not there, the BBS will then look in
  636.                                  the textfile directory.
  637.           Scan all areas       - When this option is set to yes, then
  638.                                  the BBS will check all file areas for
  639.                                  duplicates when globally uploading
  640.                                  files. This method is slower, but
  641.                                  there's no possibility of having the
  642.                                  same file in 2 directories. If the
  643.                                  option is set to no, then the current
  644.                                  area will only be scanned for
  645.                                  duplicates.
  646.           Use upload checker   - If you want your uploads CRC tested,
  647.                                  age checked, and virus scanned, turn
  648.                                  this option on. Read the section on
  649.                                  the upload checker for more
  650.                                  information on the upload checker.
  651.           SCAN Command         - This is the commandline of the virus
  652.                                  scanner that the upload checker will
  653.                                  use. IE: SCAN /A /NOMEM /NOPAUSE for
  654.                                  SCAN.EXE from McAfee.
  655.           Comment File         - This is the filename of the comment
  656.                                  that the upload checker will add to
  657.                                  your checked files. Make sure that the
  658.                                  file is in your textfile. If you
  659.                                  don't want comments added, leave it
  660.                                  blank.
  661.           File to add          - This is the filename of the file that
  662.                                  the BBS will add to checked files.
  663.                                  Again leave it blank if you don't want
  664.                                  a file added.
  665.           Age for files        - If the newst file in an archive is
  666.                                  older than this date, then the file
  667.                                  will fail the upload checker.
  668.           Delete List          - This filename (in your textfile
  669.                                  directory) contains files that the
  670.                                  upload checker will delete from
  671.                                  uploaded archives. Put one filename
  672.                                  per line.
  673.           Special Login        - This option is used to allow the SysOp
  674.                                  to completely configure the login.
  675.                                  If this option is set to no, the BBS
  676.                                  will NOT display welcome files, check
  677.                                  the notices, display status screens,
  678.                                  check for new email etc.. (Everything
  679.                                  the BBS does on a regular login).
  680.                                  Instead, the BBS will just go to your
  681.                                  starting menu as set in the CONFIG.
  682.                                  (This defaults to TOP.MNU). If you
  683.                                  want to alter any aspect of the login,
  684.                                  or make a login that looks like
  685.                                  another software's then this is the
  686.                                  option you'll want to use. If you want
  687.                                  to duplicate Oblivion/2's login to
  688.                                  modify later, here are the commands
  689.                                  that should be present in the
  690.                                  beginning of your TOP.MNU file (or
  691.                                  whatever menu you have configured as
  692.                                  the 'startup menu' in the CONFIG)
  693.           
  694.           Command Key    : -+
  695.           Function       : Displays random WELCOME.x file
  696.           
  697.           Command Key    : -N
  698.           CString        : STATUS.ANS
  699.           Function       : Displays STATUS.ANS (Login status screen)
  700.           
  701.           Command Key    : -(
  702.           Function       : Prompts the user to hit return
  703.           
  704.           Command Key    : -@
  705.           Function       : Reads System notices
  706.           
  707.           Command Key    : &]
  708.           ACS            : [
  709.           Function       : Sets user as not available for multinode
  710.                            chat
  711.           
  712.           Command Key    : &A
  713.           ACS            : [&
  714.           Function       : Asks user whether he wants to be available
  715.                            for multinode chat
  716.           
  717.           Command Key    : EN
  718.           Function       : Scans for new E-MAIL
  719.           
  720.           Command Key    : -|
  721.           Function       : Checks for incomplete infoforms
  722.           
  723.           Command Key    : MZ
  724.           Function       : Scans for new system news
  725.           
  726.           Command Key    : VC
  727.           Function       : Checks for unanswered voting questions
  728.           
  729.           Command Key    : -_
  730.           Function       : Pages SysOp is user has wanted flag set
  731.           
  732.           Allow G and I        - Allow use of the G and I commands
  733.                                  from the message reading menu. These
  734.                                  commands store replies and threads.
  735.                                  In low memory situations, these
  736.                                  commands can lock the system.
  737.           Drop carrier after   - Toggle this option to YES if you want
  738.                                  the BBS to drop carrier on users when
  739.                                  they logoff. If you do NOT want the BBS
  740.                                  to drop carrier on users after they
  741.                                  logoff (if you're running Obv/2 as a
  742.                                  door), set this option to NO.
  743.           MAINTAIN.BAT door file-If on, the BBS will create a DORINFO1.DEF
  744.                                  type of door file in the door directory
  745.                                  before the BBS executes MAINTAIN.BAT. If
  746.                                  your file maintainence program requires a
  747.                                  door file to run, turn this option on.
  748.  
  749.           System Information 3:
  750.  
  751.           Swap to EMS          - Toggle this option to YES if you want
  752.                                  the BBS to swap to EMS memory instead
  753.                                  of XMS or disk.
  754.           Swap to XMS          - Toggle this option to YES if you want
  755.                                  the BBS to swap to XMS memory instead
  756.                                  of EMS or disk.
  757.          Open/Close FDF        - Tells tells the BBS whether to open
  758.                                  and close the file description file
  759.                                  while doing file listings. This option
  760.                                  slows down file listings, and should
  761.                                  only be used on multinode systems if you
  762.                                  experience problems.
  763.          Use Timeslices        - If you are running a multitasking
  764.                                  operating system such as IBM OS/2,
  765.                                  Microsoft Windows 95, or DOS based
  766.                                  equivelants like Windows 3.11, and
  767.                                  Quarterdeck DESQView, turn this
  768.                                  option on, and Obv/2 will release
  769.                                  CPU timeslices back to the operating
  770.                                  system. This helps to speed the overall
  771.                                  speed of both foreground and background
  772.                                  tasks by making sure that the CPU isn't
  773.                                  always processing instructions from one
  774.                                  single task.
  775.  
  776.  
  777.           Look and Feel:
  778.           
  779.           Top Ten Character    - This ASCII character is the one the
  780.                                  BBS will use in the top ten bar graph.
  781.                                  Commonly used ones are   (ALT-255), or
  782.                                  ■ (ALT-254).
  783.           Use Greater than     - If yes, the BBS will put a > sign
  784.                                  before quoted text.
  785.           Use Quote Headers    - If you want to use quote headers, turn
  786.                                  this option on. Quote headers are
  787.                                  strings displayed in the message at
  788.                                  the beginning and end of a user's
  789.                                  quoted message.  They tell when the
  790.                                  person started, and stopped quoting.
  791.                                  Common phrases: User Opened his mouth
  792.                                  (start), and User Shut his mouth
  793.                                  (end).
  794.           Use Message Help     - Toggle this option to yes if you want
  795.                                  to use an external screen (MESHELP.ANS)
  796.                                  for the message reading help. (? from
  797.                                  the message reading prompt)
  798.           Use file help        - Toggle this option to yes if you want
  799.                                  to use an external screen (FILEHELP.ANS)
  800.                                  for the file listing help. (? from the
  801.                                  file listing prompt)
  802.           
  803.           Communications:
  804.           
  805.           Manual Answer        - When this command is set to yes,
  806.                                  Oblivion/2 monitors the carrier pin on
  807.                                  your serial card. When this pin
  808.                                  signals true (when the phone rings),
  809.                                  the BBS sends the answer string.  This
  810.                                  method is quicker than waiting for the
  811.                                  "RING" message from the modem.  It
  812.                                  doesn't work with all modems, so
  813.                                  experiment.
  814.           Initialization String- This string is sent to the modem after
  815.                                  every call, and when first loading up
  816.                                  the BBS. Use | as return, and ~, or
  817.                                  comma, for pauses.  Use "+++" to put
  818.                                  the modem into command mode.
  819.           Hangup String        - This string is sent to the modem when
  820.                                  you want it to hang up the phone.  Use
  821.                                  the same symbols as above.
  822.           Send Carrier Str.    - This string is sent when you want to
  823.                                  send carrier to another user.  (ie:
  824.                                  User is in his term program, and you
  825.                                  want to switch form a voice call to a
  826.                                  data call. User receives carrier
  827.                                  (ATX1D), and you send carrier (ATA))
  828.           Receive Carrier Str. - Same as above, except this will
  829.                                  receive carrier. This is typically
  830.                                  ATX1D.
  831.           Lockout Password     - This password is required for a user
  832.                                  to login when his baud rate is under
  833.                                  the minimum baud rate.
  834.           Wait Until Sent      - If this option is true, the BBS will
  835.                                  pause until the output buffer is
  836.                                  empty after a file transfer. This
  837.                                  may help to alleviate problems with
  838.                                  the higher speed modems. (28.8k)
  839.           115.2k Locking       - If you want to lock your comport
  840.                                  at 115,200 baud, set this option
  841.                                  to yes. It will ignore the port
  842.                                  lock rate, and lock at 115,200.
  843.                                  SysOps with 28.8k modems should
  844.                                  set this to yes for maximum performance
  845.                                  from their modems.
  846.  
  847.  
  848.           ACS Configuration:
  849.           
  850.           Post Anonymous ACS   - ACS required to post anonymously in
  851.                                  any base. (See the section on ACS for
  852.                                  codes)
  853.           SysOp ACS            - ACS required to be a full SysOp. When
  854.                                  you have this ACS you'll be able to
  855.                                  access all SysOp commands. (Unless
  856.                                  otherwise changed by the menu editing)
  857.           Message SysOp ACS    - ACS required to have access to the
  858.                                  message sponsor commands. (Again, this
  859.                                  can be overriden by menu editing)
  860.           File SysOp ACS       - Same as above, except for file system.
  861.           Exec in MiniDOS ACS  - ACS required to use the *COMMAND, or
  862.                                  &COMMAND commands in MiniDOS. *COMMAND
  863.                                  will execute COMMAND after performing
  864.                                  a DOS shell. Use this to run PKZIP
  865.                                  etc..  &COMMAND will execute command
  866.                                  w/o a DOS shell. Use this to run any
  867.                                  commands that are internal to
  868.                                  COMMAND.COM. (ie: DEL, ERASE, COPY)
  869.           //\\COMMAND ACS      - //\\COMMAND is a quick way to execute
  870.                                  any command from anywhere.  You must
  871.                                  have the specified ACS.  To use
  872.                                  //\\COMMAND, type //\\ followed by the
  873.                                  corresponding menu command. For
  874.                                  example, the menu command for text
  875.                                  editor is *T. If you've got //\\
  876.                                  ACS, you'd type //\\*T. This would be
  877.                                  the same as executing the text editor
  878.                                  from the SysOp menu, but you can do it
  879.                                  from anywhere! Use this access with
  880.                                  extreme caution. Anyone with this access
  881.                                  can execute ANY command regardless of it
  882.                                  being in your menus or not. If it's a valid
  883.                                  menu command, the user will be able to
  884.                                  execute it if he meets the ACS requirement.
  885.           Post Mandatory ACS   - ACS required to post a message in a
  886.                                  mandatory (NEWS) message base.
  887.                                  Mandatory message bases are
  888.                                  automatically newscanned upon logon to
  889.                                  the system. Use them to post news
  890.                                  bulletins. Be sure to purge them
  891.                                  periodically, as they will get
  892.                                  numerous.
  893.           Topten exempt ACS    - ACS for users to be exempt from the
  894.                                  top ten listing.
  895.           Certified Mail ACS   - ACS required for a user to send
  896.                                  certified mail. Cerified mail is a
  897.                                  type of Email that sends the sender a
  898.                                  notice when the receiver has read the
  899.                                  mail.
  900.           Filemail ACS         - ACS required to attach files to email.
  901.           //\\xx ACS           - The remaining options on this screen,
  902.                                  and ones similar to that in ACS
  903.                                  configuration II are used to limit your
  904.                                  CoSysOp's use of the //\\ ACS. Each option
  905.                                  is as follows '//\\*? ACS' This is the ACS
  906.                                  for any //\\ command followed by a *?. For
  907.                                  example, //\\*T is the command used to
  908.                                  activate the text editor. If you don't
  909.                                  want your CoSysOp accessing any of the *x
  910.                                  functions, but wish to let him have access
  911.                                  to other menu commands not in your menus,
  912.                                  set the ACS higher. (Read explanation of
  913.                                  //\\ACS just above)
  914.  
  915.           File Section Config:
  916.           
  917.           K per point          - This is used to establish a file point
  918.                                  ratio. How many K is one point worth?
  919.           External Area Listing- If you have made an external file area
  920.                                  listing, using either the straight
  921.                                  ANSI method, or the repeat method, set
  922.                                  this option to Yes.
  923.           Repeat Method        - If you made your area listing using
  924.                                  the Repeat Method select yes. (Read
  925.                                  the section on making external screens
  926.                                  for instruction on making repeat
  927.                                  method screens.)
  928.           Filepoint Commission - If this option is toggled to yes, a
  929.                                  commission system for filepoints will
  930.                                  be used. The commission system grants
  931.                                  the uploader a percentage credit (in
  932.                                  FP's), when someone downloads his
  933.                                  file. This encourages good uploads. If
  934.                                  nobody downloads the file, then the
  935.                                  uploader doesn't get credits.
  936.           Percentage Commission- Percent of the total filepoints to
  937.                                  give the uploader when someone
  938.                                  downloads his file. Example:
  939.                                  Points per 10K = 1
  940.                                  Percentage Commission = 100%
  941.                                  User downloads a 100K file, and the
  942.                                  uploader will get 10 points added on
  943.                                  to his account.
  944.           Times Point Back     - When you rate a file, the uploader
  945.                                  will get that rating multiplied by
  946.                                  this number. (ie: if this was 2, and
  947.                                  you rated a file at 5 pts, the user
  948.                                  gets 10 pts added to his account)
  949.           Description form 1-8 - This feature allows you to append
  950.                                  certain options to your file listing.
  951.                                  You can let users know who uploaded
  952.                                  the file, the date of upload, the size
  953.                                  compressed, the size uncompressed etc.
  954.                                  (see the MCI code section for those codes)
  955.                                  If you wish to use these options, simply
  956.                                  start at line 1, and add whichever options
  957.                                  you want your users to see in the file
  958.                                  listing. (Suggested that you use Uploaded
  959.                                  by, and the date of upload)
  960.           Lines of extended    - Tells the BBS how many lines of extended
  961.           description            description to use. Maximum is 7. This
  962.                                  option has nothing to do with FILE_ID.DIZ
  963.                                  which will use more than 7 lines of it
  964.                                  is infact longer than 7 lines.
  965.           Percent Time back    - How much time back (in %) should the
  966.                                  user get back after his upload.
  967.           Autovalidate files   - If yes, files will automatically be
  968.                                  validated after upload. Otherwise,
  969.                                  they will be marked as NEW, and
  970.                                  must be manually validated.
  971.           Min K for upload     - (in Kbytes) When your HD his this
  972.                                  amount of space, or less, uploads will
  973.                                  not be accepted.
  974.           Use Average CPS      - If this option is set to true, time
  975.                                  estimates for transfers will be made
  976.                                  on the average CPS rate of that user.
  977.                                  If it's set to no, time estimates will
  978.                                  be made based upon the connect rate.
  979.           Extraction Percent   - When the user extracts a file, he is
  980.                                  charged the file size multiplied by
  981.                                  the percentage in this field. For example,
  982.                                  if the user extracts a 100K file, and this
  983.                                  value is set to 60%, then the user is
  984.                                  charged 60K for the extraction. If file
  985.                                  points are used, the extraction percentage
  986.                                  is multiplied by 1/total # of filepoints
  987.                                  to determine how many credits to remove.
  988.  
  989.           Email Config:
  990.           
  991.           Allow Filemail       - When this option is set to yes, users
  992.                                  will be allowed to send files to each
  993.                                  other through Email.
  994.           Days to keep filemail- Filemail will be kept for this amount
  995.                                  of days. It will then be auto-purged.
  996.           
  997.           Message Section:
  998.           
  999.           External Base List   - Use an external base listing in the
  1000.                                  message section?  (See section on
  1001.                                  making an external listings in these
  1002.                                  docs)
  1003.           
  1004.           Repeat Method        - If you made your base listing using
  1005.                                  the repeat method, select yes.
  1006.           
  1007.           Val User/NUV Settings:
  1008.           
  1009.           Default Flags        - When a user is validated, he will
  1010.                                  receive these access flags.
  1011.           Daily Flag Change    - Flag changed on first call of each
  1012.                                  day. (Format: +FLAGS -FLAGS)
  1013.                                  (ie: +ABC-XYZ  - Adds ABC, turns off
  1014.                                  XYZ)
  1015.           Call Flag Change     - Flag changed on every call.
  1016.                                  (Format: +FLAGS -FLAGS)
  1017.                                  (ie: +ABC-XYZ  - Adds ABC, turns off
  1018.                                  XYZ)
  1019.           
  1020.           
  1021.                   SECTION 4: MENUCODE/STATCODE/MAKEPROM/MAKEHELP
  1022.                   ──────────────────────────────────────────────
  1023.           
  1024.           MENUCODE:
  1025.           
  1026.               Before your users can choose from multiple sets of menus,
  1027.           you must first code your ansi/ascii menu files into a single
  1028.           library file. To do this, you will need the enclosed utility
  1029.           MENUCODE.EXE.  The commandline for the code utility is as
  1030.           follows.
  1031.           
  1032.           MENUCODE <.LIB Name>
  1033.           
  1034.           Note: You might want to do this in a separate dir. Also, if a
  1035.                 file is missing the program will inform you.
  1036.           
  1037.                You may be thinking to yourself, What do I name the
  1038.           files? The answer is simple. With versions greater than 2.0,
  1039.           the SysOp decides which menu(s) will be in each library file.
  1040.           Do this by entering an up to 8 letter filename (no extension)
  1041.           in the HELP ID field in the menu editor. (Once you've begun
  1042.           to edit any menu, HELP ID is on the menu editor change
  1043.           screen.) If you do not want an ansi menu coded for a specific
  1044.           MNU file that you have, leave the HELP ID blank.
  1045.           
  1046.                After all files are successfully coded, copy the *.LIB,
  1047.           and *.NDX files to your data directory. Proceed to login to
  1048.           the BBS, and enter the main  SysOp menu.  When you've reached
  1049.           that, option "N" will allow you to edit your status screens
  1050.           or menus. Since you'll be adding menus, select M.
  1051.           
  1052.                Option "A" will add a menu set for users to choose from.
  1053.           Select this, and fill out the questions. If you do not wish
  1054.           to use Library set menus, use the Obv/2 TEXTFILE directory as
  1055.           the LIB filename.
  1056.           
  1057.           Example:
  1058.           Menu Name   : Normal Menus
  1059.           Library File: C:\OBV2\TEXTFILE\
  1060.           
  1061.           If you take this approach, no LIB/NDX files are necessary.
  1062.           
  1063.           
  1064.           STATCODE:
  1065.           
  1066.               With the ability to code multiple menu sets, the idea of
  1067.           being able to do the same with status screens was invented.
  1068.           We call these 'Status Screen Libraries.  Using a small
  1069.           utility, called STATCODE, you will be able to code multiple
  1070.           statistic screen sets for your users to choose from.
  1071.           
  1072.               The status library consists of a few configurable ANSI
  1073.           screens, they are as follows:
  1074.           
  1075.           NEWSHEAD.ANS  - The News Header
  1076.           EMAILHDR.ANS  - Header for E-mail
  1077.           HDR.ANS       - The Header
  1078.           HEADER.ANS    - Message Header
  1079.           ZIPHEAD.ANS   - Internal ZIP Viewer Header (Optional)
  1080.           FSEHEAD.ANS   - Header for fullscreen editor
  1081.           BCHANGE.ANS   - Base Change Header
  1082.           SUBSSRT.ANS   - Sub Listing Start ANSI (Optional)
  1083.           SUBSMID.ANS   - Sub Listing Repeat ANSI (Optional)
  1084.           SUBSEND.ANS   - Sub Listing End ANSI (Optional)
  1085.           AREASRT.ANS   - File Area Listing Start ANSI (Optional)
  1086.           AREAMID.ANS   - File Area Listing Repeat ANSI (Optional)
  1087.           AREAEND.ANS   - File Area Listing End ANSI (Optional)
  1088.           USERSRT.ANS   - User Listing Start ANSI (Optional)
  1089.           USERMID.ANS   - User Listing Repeat ANSI (Optional)
  1090.           USEREND.ANS   - User Listing End ANSI (Optional)
  1091.           STATUS.ANS    - Login Status Screen
  1092.           USERSTAT.ANS  - Your Stat ANSI
  1093.           FILESTAT.ANS  - File Status
  1094.           FCONFIGS.ANS  - File Listing Configuration Screen
  1095.           CONFSCR.ANS   - Config Screen
  1096.           QWKDN.ANS     - QWK Screen (For creating/downloading QWK)
  1097.           QWKUP.ANS     - QWK Screen (For REP upload/message posting)
  1098.           
  1099.           
  1100.                It is now possible to code any screen that you want into
  1101.           the status library. With the invention of the -N menu command
  1102.           (see the menu editor documentation), you may now display
  1103.           status screens anywhere in the BBS. To code additional
  1104.           screens, create a textfile called *.LST. (ie: If you code
  1105.           OBV.LIB, you'll create and OBV.LST) In this textfile, each
  1106.           line should have a  valid DOS filename without any path
  1107.           information.  When you run STATCODE, make sure to have this
  1108.           textfile in the main BBS directory.
  1109.           
  1110.                You can also code the data area ansis into your status
  1111.           screen libraries. Simply toggle that option on in the CONFIG,
  1112.           and place any ansis that have to do with data areas in the
  1113.           temp directory that you're using, and run STATCODE. (See the
  1114.           section on the data areas on these ansi files)
  1115.           
  1116.               As you can see, there are quite a few files that you can
  1117.           include in your status screen library.  You'll also notice
  1118.           that some of the screens were optional.  Those do NOT have to
  1119.           be included in your library, but can be.
  1120.           
  1121.           To Code a Status Library:
  1122.           
  1123.           1.  Create a temporary directory, copy ALL files to this
  1124.               directory.
  1125.           2.  Make sure to have your .LST file in the main directory.
  1126.           3.  Run STATCODE.EXE with this format: STATCODE <libname>
  1127.               <directory>
  1128.               ie: STATCODE PMD C:\TEMP\   (No extension on libname!)
  1129.           4.  Add the status set with the "N" SysOp command.
  1130.           5.  If you coded any of the 3 part listing screens (ie:
  1131.               SUBXXXX.ANS, USERXXXX.ANS, or AREAXXXX.ANS) you must
  1132.               toggle their use in the CONFIG.  (See the chapter on the
  1133.               configuration program on just where to find these
  1134.               options.)
  1135.           6.  If you coded the data area ansis, make sure that the
  1136.               corresponding option is turned on in the CONFIG.
  1137.           
  1138.           
  1139.           MAKEPROM:
  1140.           
  1141.                With the new-and-improved string system in version 2.00
  1142.           and greater, there is no more need for a string compiler.
  1143.           Instead, we've written a new utility called MAKEPROM which
  1144.           will add/arrange any new strings. No textfiles, no compilers,
  1145.           nothing but a simple executable file.
  1146.           
  1147.                This utility will add any new strings to the data file,
  1148.           and will arrange them in their specific order. Do not run
  1149.           this program more than on time per new version. The program
  1150.           will inform you which prompts it can convert, and all you
  1151.           need to do is run it once to update your PROMPTS.DAT.
  1152.           
  1153.           MAKEHELP:
  1154.           
  1155.                With the new configuration system in version 2.0 and
  1156.           greater, we've created a help system. This system will give
  1157.           the SysOp a brief description of each option. Whenever new
  1158.           options are added to the config, new descriptions must be
  1159.           added to the data file. MAKEHELP will update your help file.
  1160.           Run this only once per new version, just like MAKEPROM.
  1161.           
  1162.           
  1163.                         SECTION 5: DATA AREA CONFIGURATION
  1164.                         ──────────────────────────────────
  1165.           
  1166.                The data area is a new outlook on an old idea. This data
  1167.           area system draws on the old database system found in some
  1168.           BBS softwares. This system takes the good features of the
  1169.           database, and combines them with the configurability of
  1170.           Oblivion/2.
  1171.           
  1172.                Data areas can be used for a few very practical
  1173.           applications. We've already utilized these areas in making a
  1174.           BBS list, Rumors, and One Liners. All of these are completely
  1175.           SysOp configurable, and can be altered in any way the SysOp
  1176.           chooses.
  1177.           
  1178.                To show the configurability of the data areas, I will
  1179.           demonstrate making a BBS listing, along with explaining how
  1180.           these data areas work.
  1181.           
  1182.                When you first enter the data area sysop menu, you'll be
  1183.           presented with a few self-explanatory options. (Add, delete,
  1184.           change, quit.) Since we're just starting out, we'll select
  1185.           add. You'll be presented with the following screen:
  1186.           
  1187.           
  1188.           (A) Area Name      : BBS List
  1189.           (B) Access ACS     :
  1190.           (C) Add ACS        :
  1191.           (D) List Prefix    : BBS
  1192.           (E) Add Ansi       : ADDBBS.ANS
  1193.           (F) Sponsor        : Lord Tracer
  1194.           (G) Allow Anonymous: No
  1195.           (H) Store Message  : Yes
  1196.           (I) Data File Name : BBSLIST
  1197.           (J) Show Ansi      : SHOWBBS.ANS
  1198.           (K) AutoDelete     : 0
  1199.           (L) Directory      :
  1200.           (M) Node Number    :
  1201.           
  1202.           
  1203.           Area name          - Name of the data area. In our case, this
  1204.                                will be BBS list.
  1205.           Access ACS         - ACS required to access this data area.
  1206.           Add ACS            - ACS required to add an option. In this
  1207.                                case, it would be adding your BBS entry.
  1208.           List Prefix        - This prefix (up to 5 letters) tells the
  1209.                                BBS the name of the 3-part listing file
  1210.                                to use. Using BBS, the 3 ansis you'd
  1211.                                need to make would be BBSSRT.ANS,
  1212.                                BBSMID.ANS, and BBSEND.ANS. (See the
  1213.                                section on making 3 part repeat ansis
  1214.                                for help with this)
  1215.           Add Ansi           - The ANSI that appears when the user
  1216.                                wants to add to the database. In this
  1217.                                case, this ansi could be a box with BBS
  1218.                                name, number etc. Each of these options
  1219.                                requires an MCI code. Worry about that
  1220.                                later. (If you use %xx as your MCI codes
  1221.                                instead of |xx, the BBS will force input.)
  1222.           Sponsor            - The user that can edit the database. If
  1223.                                you want to give specific users their
  1224.                                own database, you do not need to give
  1225.                                them SysOp access to edit their
  1226.                                database.
  1227.           Allow Anonymous    - Can the user add to this database
  1228.                                anonymously? If so, set this to yes.
  1229.           Store Message      - Can this database store an ANSI file or
  1230.                                description for each entry? If so,
  1231.                                change this to yes.  In our case, we
  1232.                                wish to allow the SysOp to upload his
  1233.                                BBS ad, or write a description.
  1234.           Data filename      - This is the filename the BBS uses to
  1235.                                store information about this database.
  1236.                                Do not include an extension.
  1237.           Show Ansi          - This ansi is displayed when the user
  1238.                                views one of the data listings. In this
  1239.                                example, you'd want to give a lot of
  1240.                                information in the Show Ansi. Stuff that
  1241.                                you didn't put in the listing ansi.
  1242.                                Again, you'll use MCI codes for this
  1243.                                ansi, worry about what codes to use
  1244.                                later.
  1245.           Autodelete         - This number is the maximum number of
  1246.                                entries in one database. Entries will be
  1247.                                auto-purged to stay below this number.
  1248.           Directory          - Like message bases, data areas can also
  1249.                                be echoed with Obv/2's DATAMAIL.EXE
  1250.                                utility. This directory stores the *.MSG
  1251.                                files that contain the information to
  1252.                                network for the current data area.
  1253.           Node Number        - Enter the node number assigned to you by
  1254.                                your network admin. Make sure to enter
  1255.                                the node number of the net that supports
  1256.                                networked data areas. (IE: If you're in
  1257.                                ImpactNet, and you want to net BBS lists
  1258.                                with the ImpactNet SysOps, don't put
  1259.                                your Cybercrime node number)
  1260.           
  1261.           
  1262.                After you've completed the configuration of the data
  1263.           area, press q to quit. The BBS will ask you "Edit Options?"
  1264.           Select yes. In this section, there are 3 options:
  1265.           
  1266.           Name          : BBS Name
  1267.           String Length : 40
  1268.           MCI Code      : BN
  1269.           
  1270.                Enter every piece of information that you want to prompt
  1271.           the user. (You should use all of these MCI codes in your add
  1272.           ansi. Use the important ones in your listing ansi, and
  1273.           finally, all of them in your show Ansi. See the example BBS
  1274.           list provided with the BBS.)
  1275.           
  1276.                Taking a look at the above example, the name of the
  1277.           field is BBS name, you can enter up to 40 characters for this
  1278.           field, and the MCI code for your ansis is |BN. Notice that
  1279.           you do NOT put the | in the editor! Just BN!
  1280.           
  1281.                The data areas require a little work to create, but when
  1282.           you put in the effort, and understand how it works, the
  1283.           results are pleasing.
  1284.           
  1285.                With v2.20 and later, you can network your data areas.
  1286.           This is done just like networking a message base. You'll need
  1287.           an import/export directory, and a node number. The
  1288.           import/export directory stores the message files, and the
  1289.           node number tells the tosser which network it's tossing.
  1290.           
  1291.                You can only run DATAMAIL.EXE in a network that supports
  1292.           the networked data areas. Once you've found a network that
  1293.           does this, you'll just use your node #, and then a dir on
  1294.           your HD. Set this up JUST like a message base. Go into your
  1295.           tosser program, and add this area into the listing.  You'll
  1296.           be given more information by your network admin. on exactly
  1297.           how to set it up.
  1298.           
  1299.           
  1300.           
  1301.                            SECTION 6: CONFERENCE EDITOR
  1302.                            ────────────────────────────
  1303.           
  1304.               With the conferencing system, there can be up to 255
  1305.           separated message and file conferences.  Also with the system
  1306.           comes many security features to prevent unwanted users in
  1307.           your conferences.
  1308.           
  1309.               The Conference Manager is located in the main SysOp menu.
  1310.           Upon entering, you will be asked whether you wish to edit a
  1311.           message or a file conference. Select the appropriate option.
  1312.           You will be taken to the main menu of the manager. It looks a
  1313.           bit like this:
  1314.           
  1315.           
  1316.            Add Conference      Edit Conference
  1317.            Delete Conference   Change Type
  1318.            Users w/Access      Reorder
  1319.            List                Quit
  1320.           
  1321.           
  1322.           
  1323.           Add/Edit/Delete/List        - These are quite self-
  1324.                                         explanatory.
  1325.           Reorder                     - Will allow you to change the
  1326.                                         order of your conferences.
  1327.                                         (ie: Making Conference 2 into
  1328.                                         Conference 1)
  1329.           Users with Access           - This command will display a
  1330.                                         listing of all users that have
  1331.                                         access to the conference.
  1332.           
  1333.               When you wish to add/edit a conference, you are presented
  1334.           with the following:
  1335.           
  1336.           Description    :  Oblivion/2 Support
  1337.           ACS            :  S25
  1338.           Conference ID  :  1
  1339.           Password       :
  1340.           
  1341.           Description        -  This is the name of the current
  1342.                                 conference.
  1343.           ACS                -  This is the ACS required to enter the
  1344.                                 conference.
  1345.           Password           -  This is the password required to enter
  1346.                                 the conference.
  1347.           Conference ID      -  This number is used internally by
  1348.                                 Oblivion/2 to tell the BBS which
  1349.                                 conference is which. You must use this
  1350.                                 number when working with the JT, and JF
  1351.                                 menu commands. It's also used in the
  1352.                                 sub/file area listing when you don't
  1353.                                 use repeat method screens.
  1354.           
  1355.                         SECTION 7: SYSOP ONLINE FUNCTIONS
  1356.                         ─────────────────────────────────
  1357.           
  1358.                Oblivion/2 v2.0 was designed specifically with the SysOp
  1359.           in mind. There are a few global SysOp commands that can be
  1360.           accessed via the local terminal. You can also get a listing
  1361.           of these keys by pressing ALT-H from within the program.
  1362.           
  1363.           F1     - Bring User Into Chat mode  (Split-Screen)
  1364.           F2     - Bring User Into Chat mode  (One line)
  1365.           F3     - User Editor
  1366.           F4     - Scrollback Buffer
  1367.           F5     - Screen Image
  1368.           F6     - Toggles on/off logging of text typed in the chat
  1369.           F9     - Input Lockout (Locks incoming data from modem)
  1370.           F10    - Output Lockout (Locks BBS output to modem)
  1371.           ALT-A  - Toggle chat availability
  1372.           ALT-B  - Toggle Status Bar (on/off)
  1373.           ALT-N  - Nuke User (Hangs up)
  1374.           ALT-M  - Access to all message bases
  1375.           ALT-O  - Toggle Input timeout
  1376.           ALT-X  - Access to all file areas
  1377.           ALT-T  - Temporary SysOp access
  1378.           ALT-J  - SysOp Shell to DOS
  1379.           ALT-V  - Validate user
  1380.           ALT-Q  - Displays KICKOFF.ANS in textfile directory, and
  1381.                    drops carrier on user
  1382.           
  1383.           Commandline parameters for OBV.EXE:
  1384.           
  1385.           -B xxxxx  : Pass xxxxx baud rate to OBV.EXE
  1386.           -E        : Forced event run
  1387.           -A        : Return to DOS after user hangs up
  1388.           -D        : BBS doesn't check for work/swap directories
  1389.           -L        : Local Login (Logs in as SysOp from DOS prompt)
  1390.           -N x      : Load up node x
  1391.           -EMS      : Loads OVR (Overlay) into EMS memory
  1392.           -MENU     : Loads menu editor from DOS
  1393.           -USER     : Loads user editor from DOS
  1394.           -PROMPTS  : Loads string editor from DOS
  1395.           -CONFIG   : Loads CONFIG program from DOS
  1396.           -T xxxx   : xxxx = time in minutes after midnight before which
  1397.                       users should be kicked off. (ie: -T 120 means that
  1398.                       users will be kicked off until 2:00am)
  1399.           -M xxxx   : xxxx = number of minutes until the next event
  1400.                       before which users should be kicked off. (ie: -M 120
  1401.                       and an event of 7:00pm would mean that users cannot
  1402.                       access the BBS from the hours of 5:00pm until 7:00pm)
  1403.           -D        : Overrides the current swap directory setting. (In
  1404.                       case you made a mistake in entering the directory,
  1405.                       this command will allow you to enter the BBS and
  1406.                       change the bad swap directory name.)
  1407.           
  1408.           
  1409.           
  1410.                                    EVENT EDITOR
  1411.                                    ────────────
  1412.           
  1413.                One of the many great features of Oblivion/2 is its
  1414.           powerful event editing system. With the internal event
  1415.           editor, you're able to perform most any daily maintainence
  1416.           you wish, toggle SysOp availability, and much more. There are
  1417.           four basic types of events. They are:
  1418.           
  1419.           Errorlevel  - BBS exits at a certain errorlevel to run batch
  1420.                         files.
  1421.           Code        - Executes one or more menu commands with full
  1422.                         CString support.
  1423.           Availability- Toggles on/off SysOp availability.
  1424.           User ACS    - Allows you to define ACS required to login to
  1425.                         the BBS at certain times.
  1426.           
  1427.                Errorlevel events are ones in which the BBS will exit at
  1428.           an errorlevel of your choice, and run a batch file, or other
  1429.           program of your choice. To make the BBS run a batch file, you
  1430.           need to add statements to your batch file that runs the BBS.
  1431.           They will look similar to this:
  1432.           
  1433.           If errorlevel xx then runme.bat  (Use batch knowledge)
  1434.           
  1435.           Define your errorlevel, and replace xx with that level.
  1436.           Assign a time for this event, and away it goes.
  1437.  
  1438.           This is an example of a batch file that runs the BBS, and
  1439.           can be used in an errorlevel event.
  1440.  
  1441.           @ECHO OFF
  1442.           if errorlevel 100 then speedisk
  1443.           if errorlevel 255 then exit
  1444.           :BBS
  1445.           OBV.EXE
  1446.           :SPEEDISK
  1447.           cd\norton
  1448.           SPEEDISK.EXE /BATCH C:
  1449.           cd\obv2
  1450.           goto obv
  1451.           :exit
  1452.           exit
  1453.  
  1454.                As you can see, the errorlevel event is Norton Utilities
  1455.           Speedisk. The batch file was written to run speedisk when
  1456.           the BBS exits with errorlevel 100. It then re-loads the BBS
  1457.           when the program is done executing. Use this as a basis for
  1458.           other events you may wish to add in.
  1459.  
  1460.                Code events are probably the most useful. They allow you
  1461.           to perform certain menu commands with full CString support at
  1462.           any hour of the day. The uses for this are endless. One
  1463.           example is packing the Email. This should be done often to
  1464.           keep the Email system quick. To do this, add a 'Code' event
  1465.           that runs the Command Keys "EZ". Assign a time for it, and
  1466.           away it goes.
  1467.           
  1468.                SysOp availability is toggled through the event editor.
  1469.           You can toggle when the SysOp is in/out by using this event
  1470.           type. Select Availability event, and toggle whether it is to
  1471.           be when the SysOp is available or not. Assign a time, and
  1472.           thats it.
  1473.           
  1474.                The final event type is User ACS. This event type is
  1475.           used to restrict BBS logins to certain ACS requirements. For
  1476.           example, you can make it so that only user 20 can log into
  1477.           the system at 5:00am to 6:00am. Add a User ACS event, and
  1478.           make the ACS "U20" (No "" marks). Add 5:00 am as the start
  1479.           time, and 6:00 am for the end time. Simple as that.
  1480.           
  1481.                The commandline switch -E is used to execute your events
  1482.           if you're running FD. When running any type of mailer,
  1483.           chances are that the BBS will miss its events. If the time
  1484.           has already passed (Say you've got an event scheduled to pack
  1485.           the message bases at 2:00am), Obv/2 will run that 2:00am
  1486.           event. (Only if its past 2:00am)
  1487.           
  1488.           
  1489.                                    DELETED LIST
  1490.                                    ────────────
  1491.           
  1492.                The deleted list is like an improved blacklist. It gives
  1493.           you much more control over who gets on the system, and who
  1494.           stays off, and for how long. Here's how it works.
  1495.           
  1496.                When you want to delete someone, he can optionally be
  1497.           tossed into this deleted list. When inside of the list, there
  1498.           are 3 types of deletions:
  1499.           
  1500.                Immediate: File displayed to user, Then he's off the
  1501.                           blacklist, and can re-apply.
  1502.               Expiration: File displayed to user until date specified.
  1503.                           After date specified, user is off deleted
  1504.                           list.
  1505.                    Never: File displayed to user. Permanantly on the
  1506.                           blacklist.
  1507.           
  1508.                If you noticed above, each level of deletion displays a
  1509.           file to the user. When you add a user, you can change the
  1510.           blacklist file for each one. This lets you put 'personal'
  1511.           messages to your blacklisted users. The default is
  1512.           BLACKLST.ANS. If you want to change the filename, enter
  1513.           a different one when the BBS prompts you for a filename.
  1514.           
  1515.           
  1516.                                   STRING EDITOR
  1517.                                   ─────────────
  1518.           
  1519.                With new versions of Oblivion/2, string editing has
  1520.           become much easier. You no longer need to compile your
  1521.           strings, the BBS will do it all for you.
  1522.           
  1523.                This new version now has an online string editor. Some
  1524.           features include: strings of up to 255 characters, being able
  1525.           to use filenames in place of strings, and customized
  1526.           variables for displaying BBS information in your strings.
  1527.           
  1528.                Moving around in the editor is quite simple. Press [,]
  1529.           to view 5 more strings. When you see a string that you wish
  1530.           to edit, press that strings corresponding number. The BBS
  1531.           will then allow you to edit that string on the lower half of
  1532.           the screen. You may use CTRL-V to toggle insert mode, and use
  1533.           CTRL-U as an ascii chart. (Use the cursor to pick the upper
  1534.           ASCII character you want, and it will be printed in the
  1535.           cursor's current position in your string).
  1536.           
  1537.                Notice that when you see your strings, you'll see 2
  1538.           lines for each string. The upper line is what the string
  1539.           description is, and the lower line is what you've configured
  1540.           that string to be.
  1541.           
  1542.                You may use |Ux (1-6) for each of the six user colors.
  1543.           You can also use |01-15 to force a certain color. |OT, and
  1544.           |O2 are internal variable MCI codes that the BBS uses to
  1545.           place information. If you see one of the prompts with a |OT,
  1546.           or |O2, make sure that your string also has one.
  1547.           
  1548.                Another approach to string editing is filenames. You can
  1549.           have the BBS print a file instead of a string. This comes in
  1550.           handy for places where you just need to put more information.
  1551.           For example, you might want to configure your message reading
  1552.           string, or file newscanning string to use a textfile. This is
  1553.           a simple process. Create your ANSI, and place it into your
  1554.           textfile directory. Use %%FILENAME.EXT for that string in
  1555.           your editor. This will force the BBS to read that string from
  1556.           the file. In this external file, you may use 3 percent codes:
  1557.           %IN, %OT, and %O2. %IN tells the BBS where to place the
  1558.           cursor after the screen has been drawn. Use this to place
  1559.           user input anywhere you want. The input color will be the
  1560.           same as the color that you use with %IN. Like above %OT, and
  1561.           %O2 are information placers.  Only use them if the original
  1562.           string has them.
  1563.           
  1564.                A new code has been added to let the string pause for a
  1565.           return. This string is |PA. When you add this anywhere in
  1566.           your string, you'll be paused until the user hits return.
  1567.           
  1568.                You should run the Oblivion/2 Utility MAKEPROM.EXE when
  1569.           you are instructed to by us. This updates your prompts
  1570.           automatically. It saves a lot of time, and is better than the
  1571.           old PROMPTS.TXT way of doing things. Make sure not to run the
  1572.           program more than one time, as it could lead to damage of
  1573.           your string file!
  1574.           
  1575.                                 MENU PROMPT EDITOR
  1576.                                 ──────────────────
  1577.           
  1578.                The menu prompt editor allows you to configure many
  1579.           different prompts, and have your users choose which one they
  1580.           like. These prompts can range from something simple like
  1581.           this:
  1582.           
  1583.           Main Menu:
  1584.           
  1585.           to something more extravagant:
  1586.           
  1587.           [10:06 pm EST]
  1588.           [Main Menu] [?/Help]:
  1589.           
  1590.                The operations of this editor are quite self-
  1591.           explanatory. When making menu prompts, you'll be in the
  1592.           Fullscreen editor. There are several MCI codes that you'll be
  1593.           able to use in your prompts.
  1594.           
  1595.           |01-|15 : ANSI colors from 01-15
  1596.           |MN     : Menu Name (Name in prompt in Menu editor)
  1597.           |TL     : Time Left
  1598.           |TM     : Time Now
  1599.           |FLxx   : Sets input length to xx
  1600.           |RC     : Regular Color
  1601.           |SC     : Status Color
  1602.           |PC     : Prompt Color
  1603.           |EC     : Input Color
  1604.           |VC     : Inverse Color
  1605.           |XC     : Box Color
  1606.           |Ux     : Moves up x amount of lines
  1607.           |Dx     : Moves down x amount of lines
  1608.           |Fx     : Moves forward x spaces
  1609.           |Bx     : Moves backward x spaces
  1610.           |Xxx    : Moves to absolute X value. ie: |X10 moves to the
  1611.                     10th row
  1612.           |NN     : Displays Node Number
  1613.  
  1614.           SysOps may place %%filename.ext anywhere in the menu prompt
  1615.           to display filename.ext from the prompts directory. Use the
  1616.           %MN code to display the Menu's Name in Prompt (in filename.ext).
  1617.           Set the Prompts directory in the CONFIG.
  1618.  
  1619.                                  PROTOCOL EDITOR
  1620.                                  ───────────────
  1621.           
  1622.                With version 2.xx of Oblivion/2, protocol editing has
  1623.           been made much easier. All protocol setup is done internally.
  1624.           
  1625.                When you first enter the protocol editor. You'll be
  1626.           asked which type of protocols you want to edit. There's four
  1627.           types of protocols: Single File, Batch, Resume, and
  1628.           Bidirectional.  Single File protocols (both upload and
  1629.           download) are used in sending QWK Packets, Receiving REP
  1630.           Packets, Receiving Filemail, Sending Memorized Messages,
  1631.           Sending Complete File Lists, etc.  Batch Protocols are the
  1632.           heart of the file system. Resume Protocols are used to let a
  1633.           user resume an uncompleted upload. (Only some protocols
  1634.           support this, DSZ, MPT, HS-Link are a few examples)
  1635.           
  1636.                Once you've selected which type of protocol you want to
  1637.           edit, you'll be placed in an Oblivion/2 Box editor. The
  1638.           options available from this screen are: Description, Key,
  1639.           Program Name, and Commandline. Description is the description
  1640.           you want to give the protocol. (ie: Zmodem Mobyturbo). Key is
  1641.           the KEY that users must press to activate that protocol. (for
  1642.           Zmodem, this could be Z). Program Name is the protocol
  1643.           executable itself. (For Zmodem, DSZ.COM, or GSZ.EXE) Finally,
  1644.           the commandline options are to be placed in the commandline
  1645.           string. (See the DSZ documentation for the best string to
  1646.           use)
  1647.           
  1648.                                  PARAMETER EDITOR
  1649.                                  ────────────────
  1650.           
  1651.                The parameter editor is a quick and easy way of
  1652.           utilizing levels. What the editor does is allow you to define
  1653.           a level (lets say 50), and let you give that level certain
  1654.           PCR, UD, UD K, Time, DL K PER DAY ratios, and various
  1655.           expiration values.
  1656.           
  1657.                To use the editor, just create a level (say 50). Then,
  1658.           enter in level 50's PCR, UD, UD K, TIME and DL K PER DAY
  1659.           ratios/values. Now, when someone's given level 50 from the
  1660.           user editor, they'll get these specified amounts.
  1661.           
  1662.                You can now also specify a # of days til expiration, and
  1663.           the level that the user will receive when his account expires
  1664.           for each level in your parameter editor.
  1665.           
  1666.                The unique feature of this Paramater editor is that it
  1667.           can be totally invisible to the SysOp if he/she desires. In
  1668.           your CONFIG, under 'Validated User Levels' there are a few
  1669.           'Default XXXX level' entries. Should you wish to use the
  1670.           parameter editor, change those values from whatever they may
  1671.           be to zero. (Do this only for the Default UD, UD K, DL K per
  1672.           day, Time etc. Do not change Average CPS to 0). When the
  1673.           value is Zero, it tells Obv/2 to read from the parameter
  1674.           editor values. Should you wish not to use this editor, change
  1675.           the values to whatever you wish. The parameter editor will
  1676.           have no function.
  1677.           
  1678.                If you want to change a certain field for a certain
  1679.           user, it's simple. Say you wanted to give Joe User 30 minutes
  1680.           instead of 15 mins. (Say level 50 had 15 mins in it). You'd
  1681.           then go to the user editor. Option 'time left' should be
  1682.           changed to 30. Thats it.
  1683.           
  1684.                Please note, in the user editor, DL K per DAY, Time, UD,
  1685.           UD K, and PCR must all be zero. The parameter system will
  1686.           only look at those values in the parameter editor if the
  1687.           values for the above, in the user editor, are zero. There is
  1688.           a function in the editor which allows you to Zero-Out certain
  1689.           levels of users, so that they can follow the parameters. Also
  1690.           note that the default CONFIG levels must also be zero for the
  1691.           parameter editor to take effect. If they're not, the
  1692.           parameter editor will not function correctly.
  1693.           
  1694.           
  1695.                                    USER EDITOR
  1696.                                    ───────────
  1697.           
  1698.                The user editor in 2.xx has been completely overhauled.
  1699.           It's now completely batch oriented, and allows for many new
  1700.           options. A few of these include Infoform Extraction,
  1701.           Searching, Quick Loading of Users, Highlight Selected User
  1702.           Editing and more.
  1703.           
  1704.                When you first select the user edit option, you'll be
  1705.           asked 'Edit Individual' If you pick yes, the BBS will prompt
  1706.           you to enter a username. If you select no, the BBS will clear
  1707.           screen, and print 23 user names, and let you select them with
  1708.           a highlight bar. Hit "Q" to quit that process, or RETURN to
  1709.           select the highlighted user.
  1710.           
  1711.                Once inside the editor, you'll find a myriad of
  1712.           configurable options. Note a few important keys: [,] move to
  1713.           the previous/next user. {,} move to the previous/next user in
  1714.           your search link. * extracts the selected Infoform to a file.
  1715.           Finally, S takes you into the Search Editor. It looks like
  1716.           this:
  1717.           
  1718.           (H) Handle String  : [OFF]
  1719.           (A) ACS            : [OFF]
  1720.           (L) Level          : [OFF] - [OFF]
  1721.           (F) File Level     : [OFF] - [OFF]
  1722.           (D) Days Since 1st : [OFF] - [OFF]
  1723.           (S) Days Since Last: [OFF] - [OFF]
  1724.           (E) Flag           : [OFF]
  1725.           (N) Number of Calls: [OFF] - [OFF]
  1726.           (Y) Age            : [OFF] - [OFF]
  1727.           (G) Gender         : [OFF]
  1728.           (P) PCR            : [OFF] - [OFF]
  1729.           (U) % U/D Ratio    : [OFF] - [OFF]
  1730.           (K) % U/D K Ratio  : [OFF] - [OFF]
  1731.           (X) Expiration Date: [OFF] - [OFF]
  1732.           (T) Tabulate Search
  1733.           
  1734.                This unique editor allow you to have the BBS search for
  1735.           specific users, using your search criteria, and let you edit
  1736.           all of them easily. This makes manual changes a breeze.
  1737.           
  1738.                The options above are pretty self-explanatory. Make sure
  1739.           to press "T" to 'Tabulate Search' If you don't, your search
  1740.           won't run, and you'll lose your search criteria.
  1741.           
  1742.                When in the user editor, use the {,} keys for quick
  1743.           backward/forward progress in your search editing.
  1744.           
  1745.                                SECTION 8: INFOFORMS
  1746.                                ────────────────────
  1747.           
  1748.                Infoforms are a sysop's easy way of keeping information
  1749.           about his users. Usually, when you login to a BBS, you'll be
  1750.           asked to fill out forms. Sometimes forms are used as
  1751.           applications to groups or whatnot. None the less, they are
  1752.           very useful in storing information.
  1753.           
  1754.               Making Ansi or Ascii infoforms is quite simple. For Ascii
  1755.           infoforms create your ascii file with questions, and using
  1756.           Qedit or any similar text editor use one of these following
  1757.           characters depending on what you wish to do:
  1758.           
  1759.           *    -- Waits for a response. (Abortable)
  1760.           |Xx  -- Limits User input to xx spaces.
  1761.           %xx  -- Accepts up to xx characters, and will repeat
  1762.                   the question if the user leaves it blank.
  1763.           @    -- Gets input similar to *. It will repeat the
  1764.                   the question if the user leaves it blank.
  1765.  
  1766.                You have space for 5 information forms. After you've
  1767.           created your ANSI/ASCII infoform, name it INFOFORM.1 through
  1768.           INFOFORM.5. INFOFORM.5 is the form used by New User Voting.
  1769.           If you want NUV, make sure to put the appropriate form in
  1770.           INFOFORM.5.
  1771.           
  1772.                You can force users to fill out certain infoforms by
  1773.           making them mandatory in the CONFIG. Users must fill those
  1774.           forms out in their login in order to gain access to the
  1775.           system.
  1776.           
  1777.                You can clear your infoforms by using the Clear Infoform
  1778.           command from the SysOp menu. If you have altered your
  1779.           infoform, it's a good idea to clear out your infoforms
  1780.           because the answers could end up in the wrong spots.
  1781.  
  1782.                New with version 2.20, you can now have multiple infoform
  1783.           sets. Instead of letting users fill out only 5 forms, you can
  1784.           have an unlimited amount of infoforms. The default 5 infoforms
  1785.           are stored in a data file called INFOFORM . To have more than 5
  1786.           forms, you can change the file that the infoforms are stored in.
  1787.           The user editor, and the -) menu command allow you to change the
  1788.           data file to another name. Each new data file stores 5 new infoforms
  1789.           for each user.
  1790.  
  1791.           
  1792.                           SECTION 9: MAKING REPEAT ANSIs
  1793.                           ──────────────────────────────
  1794.           
  1795.           In an effort to add more configurability to Obv/2, we've
  1796.           created the 'Repeat Method' of making ANSI screens.  These
  1797.           screens are used all around the BBS. Some areas include:
  1798.           Message base/File Area Listings, One Liners, Rumors, User
  1799.           Listing, Last Caller Listing, BBS Listing and more. It's
  1800.           important that you learn how these work. Please read
  1801.           carefully.
  1802.           
  1803.           In the repeat method, there are 3 screens for each type of
  1804.           listing.  The first, an intro, the second is the actual way
  1805.           to repeat, and the 3rd is an ending.
  1806.           
  1807.           For example, to make a messge base listing that looked like
  1808.           this:
  1809.           
  1810.           
  1811.           Base         Description                             Network
  1812.           ─────────────────────────────────────────────────────────────
  1813.           1            General Talk                           ImpactNet
  1814.           2            BBS Advertisements                     ImpactNet
  1815.           ─────────────────────────────────────────────────────────────
  1816.           
  1817.           The 3 files used in message base listing are:
  1818.           
  1819.           SUBSSRT.ANS  - Intro to listing
  1820.           SUBSMID.ANS  - Middle (This uses MCI codes, and is the one
  1821.                          that will be repeated)
  1822.           SUBSEND.ANS  - The end of the listing.
  1823.           
  1824.           
  1825.           Our SUBSTART.ANS would look like this:
  1826.           
  1827.           Base         Description                             Network
  1828.           ─────────────────────────────────────────────────────────────
  1829.           
  1830.           Our SUBSMID.ANS would look like this:
  1831.           
  1832.           |AN          |BN                                     |NN
  1833.           
  1834.           Our SUBSEND.ANS would look like this:
  1835.           
  1836.           ─────────────────────────────────────────────────────────────
  1837.           
  1838.                As you can see, the repeat ansi is one of the most powerful
  1839.           features of Oblivion/2.  Due to several bugs in TheDraw and
  1840.           missing features in the ANSI.SYS device, you need to make a
  1841.           few manual changes to  the middle part before they will work
  1842.           properly. (Middle part = xxxxxMID.ANS)
  1843.           
  1844.                Load TheDraw and draw your ansi. When done, enter
  1845.           animation mode using top rescan (others may work, but this is
  1846.           standard).  Place the appropiate MCI codes and save the ansi.
  1847.           (If you are doing a plain non-animated ansi, save it as a
  1848.           block. Note that this cannot be done with animated screens).
  1849.           
  1850.                Exit TheDraw, and run ANSITRAN on it. ANSITRAN is a
  1851.           utility supplied with the Oblivion/2 package, and is supposed
  1852.           to clean the ANSI saved in TheDraw from unwanted escape
  1853.           codes.  Mostly it makes a good job of this, but since you are
  1854.           going to edit your ANSI anyways, you might as well double-
  1855.           check.
  1856.           
  1857.                To do this, load your finished ANSI into QEdit or a
  1858.           similar ASCII based text-editor. The strings ANSITRAN looks
  1859.           for are esc[255D and esc[Aesc[B (the two codes together like
  1860.           that or esc[Besc[A). If you see them, remove them.
  1861.           
  1862.                The important part in making your repeat ANSI work, is
  1863.           to replace any esc[yy;xxH codes with esc[;xxH.  This is
  1864.           because ANSI.SYS doesnt support going to XXth column in
  1865.           current row, and thus TheDraw doesn't add that code in.
  1866.           According to the ANSI 3.64-1979 standard esc[;xxH should go
  1867.           to XXth column in first row, however Oblivion/2 interprets
  1868.           the code differently in middle repeat ansis (and only middle
  1869.           in the repeat ansis).  Instead of going to XXth column in
  1870.           first row, it will go to XXth column in current row, thus
  1871.           making repeat ANSIs possible.
  1872.           
  1873.                Having completed this, your repeat ansi is ready for
  1874.           use.  It may take a while to become familiar with the ANSI
  1875.           codes, but after a while you learn them and this procedure
  1876.           will be mere routine.
  1877.           
  1878.           
  1879.                An example of a middle repeat ansi, created for the
  1880.           oneliners follows below.  This example repeat ansi would look
  1881.           like this:
  1882.           
  1883.           "█ Here goes your oneliners...                Column 80 -> █"
  1884.           
  1885.           This is how TheDraw saved the animated middle ansi I just
  1886.           made:
  1887.           
  1888.            [255D [0B [255D [0;1;30m█ [78C█ [2C [1A [0;32m|ON [0m
  1889.           
  1890.                We remove the esc[255D's and notice the esc[0B. It moves
  1891.           the cursor 0 chars down, so we can remove that too. The
  1892.           esc[78C moves the cursor 78 spaces to the right, we could
  1893.           also have done this using esc[;80H, thus moving the cursor to
  1894.           a fixed position in column 80. This is quite useful in some
  1895.           cases, and it makes it easier to recognize what is being
  1896.           done. After editing, it now looks like this:
  1897.           
  1898.            [0;1;30m█ [78C█ [2C [1A [0;32m|ON [0m
  1899.           
  1900.                Here's what it does: esc[0;1;30m equals the three ansi
  1901.           codes esc[0m, esc[1m, and esc[30m, color manipulations.
  1902.           Stacking commands using semicolon is used very often, and can
  1903.           be done as long as the last letter of the command (in this
  1904.           case m) is the same. Next, it puts a █ at position one, moves
  1905.           79 spaces to the right and dumps another one █, wordwrapping
  1906.           onto the next line. Then it goes two more spaces to the
  1907.           right, and one line up, fixing out location at column 3.
  1908.           Cursor color is set to dark green.  The MCI code will be
  1909.           replaced by your oneliner when this is shown. At last, the
  1910.           colors are reset so as not to interfere with your next ansi.
  1911.           
  1912.           And this is already a working repeat ansi!  If you'd rather
  1913.           use the esc[;xxH code, it'd look like this:
  1914.           
  1915.            [0;1;30m█ [;80H█ [;3H [2;32m|ON [0m
  1916.           
  1917.           I prefer this one myself, but both will work in this case.
  1918.           
  1919.               As you can see, the system is very easy to use, and is
  1920.           very versatile. Please note that each screen type has certain
  1921.           MCI codes that go with it. Only in Data Areas can you define
  1922.           your own MCI codes. These are as follows:
  1923.           
  1924.                With versions after v2.20, you must be careful with your
  1925.           xxxxMID.ANS files. They must not be over 16K. If they are,
  1926.           there will be certain problems. Some screens cannot even be
  1927.           16K, those screens will be noted as they are listed.
  1928.           
  1929.           
  1930.           SUBSSTAR.ANS - Message Base Listing Start
  1931.           SUBSMID.ANS - Message Base Listing Middle
  1932.             |AN - Base Number
  1933.             |BN - Base Name
  1934.             |SS - Sponsor
  1935.           SUBSEND.ANS - Message Base Listing End
  1936.           
  1937.           AREASTAR.ANS - File Area Listing Start
  1938.           AREAMID.ANS - File Area Listing Middle
  1939.             |AN - Area Number
  1940.             |AI - Area Name
  1941.             |AS - Area Sponsor
  1942.           AREAEND.ANS - File Area Listing End
  1943.           
  1944.           USERSTAR.ANS - User Listing Start
  1945.           USERMID.ANS - User Listing Middle
  1946.             |UH - User Handle
  1947.             |LE - Level
  1948.             |UN - User Note
  1949.             |AC - Area Code
  1950.             |LC - Last Call
  1951.           USEREND.ANS - User Listing End
  1952.           
  1953.           LASTSRT.ANS - Recent Callers Start
  1954.           LASTMID.ANS - Recent Callers Middle
  1955.             |UH - User Handle
  1956.             |DO - Date On
  1957.             |TO - Time On
  1958.             |BR - Baud Rate
  1959.           LASTEND.ANS - Recent Callers End
  1960.           
  1961.           DAILYSRT.ANS - Daily Log Start
  1962.           DAILYMID.ANS - Daily Log Middle
  1963.             |DT - Date
  1964.             |NP - New Posts
  1965.             |NF - New Files
  1966.             |NC - Number of Calls
  1967.             |TU - Time Used
  1968.             |NU - New Users
  1969.           DAILYEND.ANS - Daily Log End
  1970.           
  1971.           PRO?SRT.ANS  - Protocol Listing Start
  1972.           PROT?MID.ANS - Protocol Listing Middle (Limit: 1024 bytes)
  1973.             |KE - Key
  1974.             |DE - Protocol Description
  1975.           PROT?END.ANS - Protocol Listing End
  1976.           
  1977.           ? =
  1978.           1 for download protocols        │ PROT1SRT.ANS ─┐
  1979.           2 for upload protocols          │ PROT1MID.ANS  │──┐
  1980.           3 for batch download protocols  │ PROT1END.ANS ─┘  │
  1981.           4 for batch upload protocols    │   ┌──────────────┘
  1982.           5 for resume protocols          │   For a download protocol
  1983.           6 for bidirectional protocols   │   listing.
  1984.           
  1985.           INCSRT.ANS - Incoming E-Mail Start
  1986.           INCMID.ANS - Incoming E-Mail Middle
  1987.             |NU - Mail #
  1988.             |TI - Title of E-Mail
  1989.             |ST - Status -- (New or Old)
  1990.             |FM - From User
  1991.           INCEND.ANS - Incoming E-Mail End
  1992.           
  1993.           OUTSRT.ANS - Outgoing E-Mail Start
  1994.           OUTMID.ANS - Outgoing E-Mail Middle
  1995.             |NU - Mail #
  1996.             |TI - Title of E-Mail
  1997.             |ST - Status -- (New or Old)
  1998.             |TO - To User
  1999.           OUTEND.ANS - Outgoing E-Mail End
  2000.           
  2001.           GENSRT.ANS - Generic Menu Template Start
  2002.             |TI - Menu Title
  2003.           GENMID.ANS - Generic Menu Template Middle (Limit: 2048 bytes)
  2004.             |K? - Keys for option ? in the line
  2005.             |D? - Description for option ? in the line
  2006.           GENEND.ANS - Generic Menu Template End
  2007.           
  2008.           (For more information on generic menus, see that section
  2009.            of the documentation.)
  2010.  
  2011.                         SECTION 10: MAKING STANDARD ANSIS
  2012.                         ─────────────────────────────────
  2013.           
  2014.               When making the animated statistic screens, such as a new
  2015.           Main User Stat screen, a few simple rules must be followed.
  2016.           Screens should be made in this manner to insure that they
  2017.           will work correctly with Oblivion/2.
  2018.           
  2019.               These are the instructions to make a non-animated status
  2020.           screen. Animated Status screens require a bit more work and
  2021.           will require maintenance if they are not correctly made.
  2022.           
  2023.           To make Stat Screens w/o Complex Animations, follow these
  2024.           steps:
  2025.           
  2026.           1] Draw Basic Screen.
  2027.           2] Put Thedraw into ANIMATION Mode. And when prompted to
  2028.              select scanning method, use "TOP" (Others may work, but
  2029.              this is standard.)
  2030.           3] Add the Appropriate MCI Codes, some external screens use
  2031.              the |xx codes and others use the %xx codes. Make sure you
  2032.              use the right ones.
  2033.           4] After you've finished adding the MCI Codes, Save Animation
  2034.              in Ansi file format.  Select Clear Screen, and Maximum
  2035.              line length to 255.  Again, other numbers work, but this
  2036.              is standard.
  2037.           
  2038.               If your MCI codes seem out of place (ie: The stat isn't
  2039.           showing up where I put the MCI code for it), this could be
  2040.           one of two things.
  2041.           
  2042.           1] |xx codes were used instead of %xx and vice versa.
  2043.           2] Thedraw has expanded the MCI codes and Oblivion/2 cannot
  2044.              recognize them.
  2045.           
  2046.               If you used the right type of MCI codes, chances are that
  2047.           your problem is #2.  Thedraw has a nasty habit of expanding
  2048.           MCI codes to more than 3 letters, therefore making them
  2049.           unrecognizable to Oblivion/2.  There is a solution to this,
  2050.           ANSITRAN.EXE was written by Darkened Enmity to combat this
  2051.           problem. It is included in the distribution ZIP.  Here
  2052.           are the instructions for using this utility:
  2053.           
  2054.           1] Save ANSI in 80 character per line mode. With whatever
  2055.              preparation you've previously chosen.
  2056.           2] Run ANSITRAN filename to correct the MCI bug.
  2057.           
  2058.           
  2059.           Another Screen that requires Attention is CONFSCR.ANS
  2060.           
  2061.               Use the appropriate |xx codes for this screen, but there
  2062.           is a difference in this screen than in others. When making
  2063.           your ansi, you MUST make the Color Bar.  Use Ansi Block
  2064.           Characters to make the bar.  ALL COLORS 0-15 must be in this
  2065.           bar if you want it to work correctly.  After you have
  2066.           made the main ansi with the color bar, put it into Top Scan
  2067.           Animation. Add the |xx codes.  When you are adding the |CB
  2068.           code (|CB is color bar), put this code OVER the Black on
  2069.           Black Box.  It will look a bit like this.
  2070.           
  2071.           0123456789ABCDE  (You'll have boxes, numbers are used only
  2072.                             for example)
  2073.           
  2074.           |CB go right over 0,1, and 2.
  2075.           
  2076.           An example will be provided for you.
  2077.           
  2078.           
  2079.                SECTION 11: MCI CODES / SYSOP CONFIGURABLE TEXTFILES
  2080.                ────────────────────────────────────────────────────
  2081.           
  2082.           STANDARD CODES: All preceeded with %
  2083.           
  2084.           UN Handle
  2085.           RN Real Name
  2086.           PN Phone Number
  2087.           AD Address
  2088.           LO Location
  2089.           UC UserNote
  2090.           UL Level
  2091.           FL File level
  2092.           FP File Points
  2093.           UK Uploaded K
  2094.           DK Downloaded K
  2095.           UP Uploads
  2096.           DN Downloads
  2097.           PS Posts
  2098.           CS Calls
  2099.           TL Time Left
  2100.           NF New Files
  2101.           NP New Posts
  2102.           CR Connect Rate
  2103.           TT Daily Time Limit
  2104.           LC Last Caller
  2105.           TC Total Calls
  2106.           CT Calls Today
  2107.           FT Files Uploadded or Added Today
  2108.           PT Messages Posts Today
  2109.           NT New Users Today
  2110.           UU User Number
  2111.           BN Board Name
  2112.           SN Sysop Name
  2113.           DT Date
  2114.           TM Time
  2115.           SS Current Status Screen Library Name
  2116.           MS Current Menu Library Name
  2117.           PC Post/Call Ratio
  2118.           PF Turns Screen Pausing Off
  2119.           PO Turns Screen Pausing Back On (Provided User has enabled
  2120.              Screen Pauses)
  2121.           NR U/D Ratio
  2122.           KR U/D K Ratio
  2123.           LD Last On Date
  2124.           UA Makes anything below it unabortable. Use it for screens
  2125.              that you want to force users to see.
  2126.           CA Current Area
  2127.           CB Current Base
  2128.           DU Days until expiration
  2129.           NN Node Number
  2130.           PA Pauses the screen
  2131.           VN Version Number
  2132.           VD Version Date
  2133.           TF Total Files
  2134.           TP Total Posts
  2135.           CF Current File Conference
  2136.           CM Current Message Conference
  2137.           CE Message # (Only activated when used with the Nx message
  2138.              newscanning commands)
  2139.           
  2140.           ANSIS IN STATUS SCREEN LIBRARIES:
  2141.           
  2142.           BCHANGE.ANS - Message Base Changing Ansi
  2143.             |SN - Base Name
  2144.             |SS - Base Sponsor
  2145.             |NM - Number of Messages
  2146.             |UP - Number of Posts you made
  2147.             |LR - Last Read
  2148.             |DT - Date
  2149.             |TI - Time
  2150.           
  2151.           HDR.ANS - Message
  2152.             |HM - Header Message
  2153.             |LH - Repeats next character for as many characters there
  2154.                   are in the header message
  2155.             |CC - Repeats next character for as many characters as are
  2156.                   needed such that four |CC and |HM fill a line.
  2157.             |CH - Displays a centered header message
  2158.           
  2159.           ZIPHEAD.ANS - Internal ZIP Viewer Header
  2160.            (uses same codes as HDR.ANS, and is packed with status
  2161.             libraries)
  2162.  
  2163.           HEADER.ANS - Message Header
  2164.             |BN - Base Name
  2165.             |RT - Message to which current is a reply
  2166.             |MN - Message Number
  2167.             |OU - Total Messages
  2168.             |TL - Title
  2169.             |UN - Poster's Note
  2170.             |FM - Poster's Name
  2171.             |DT - Date Posted
  2172.             |TI - Time Posted
  2173.             |TO - Sent To
  2174.             |ST - Status
  2175.           
  2176.           CONFSCR.ANS - User Config Screen
  2177.             |CB - Color Bar Starting
  2178.             |FS - Full Screen Editor Toggle
  2179.             |PL - Page Length
  2180.             |DP - Pause
  2181.             |AD - Address
  2182.             |LC - Location
  2183.             |RC - Regular Color
  2184.             |PC - Prompt Color
  2185.             |IC - Input Color
  2186.             |VC - Inverse Color
  2187.             |SC - Status Color
  2188.             |BC - Box Color
  2189.             |CP - Current Prompt
  2190.             |EP - Emulation
  2191.             |CM - Current Menu
  2192.             |CS - Current Status Screen
  2193.             |RR - Reply Reading
  2194.             |UN - User Note
  2195.             |YN - Yes No Bars
  2196.             |RM - Redisplay Message
  2197.             |SF - Scrollable File Listing
  2198.             &xy - X = User flag. Y = Key to toggle flag.
  2199.                 - With this code, you can add in your own configuration
  2200.                 - options.
  2201.           
  2202.           
  2203.           FCONFIGS.ANS - File List Config Screen
  2204.             |O1 - Option 1 - Status Points
  2205.             |O2 - Option 2 - Points
  2206.             |O3 - Option 3 - Size
  2207.             |O4 - Option 4 - Date Uploaded
  2208.             |O5 - Option 5 - Downloads
  2209.             |O6 - Option 6 - Uploader
  2210.             |O7 - Option 7 - File Description
  2211.             |US - Used Space
  2212.             |EX - Example
  2213.           
  2214.           FSEHEAD.ANS - Full Screen Editor Header
  2215.             |TI - Title
  2216.             |ST - Send To
  2217.             |AN - Anonymous
  2218.             |AU - Autosig
  2219.             |DT - Date
  2220.             |TM - Time
  2221.           
  2222.           SUBSSTAR.ANS - Base Listing Start
  2223.           
  2224.           SUBSMID.ANS - Base Listing Middle
  2225.             |AN - Base Number
  2226.             |BN - Base Name
  2227.             |SS - Sponsor
  2228.           
  2229.           SUBSEND.ANS - Base Listing End
  2230.           
  2231.           FHEADER.ANS - File List Header
  2232.             |FH - Line of Information
  2233.           
  2234.           STATUS.ANS - User's Status
  2235.             Standard Codes
  2236.           
  2237.           FILESTAT.ANS - User's File Status
  2238.             Standard Codes
  2239.           
  2240.           USERSTAT.ANS - User's Stats
  2241.             Standard Codes
  2242.           
  2243.           AREASTAR.ANS - File Area Listing Start
  2244.           
  2245.           AREAMID.ANS - File Area Listing Middle
  2246.             |AN - Area Number
  2247.             |AI - Area Name
  2248.             |AS - Area Sponsor
  2249.           
  2250.           AREAEND.ANS - File Area Listing End
  2251.           
  2252.           NEWSHEAD.ANS - News Header
  2253.             |BN - Base Name
  2254.             |RT - Message to which current is a reply
  2255.             |MN - Message Number
  2256.             |OU - Total Messages
  2257.             |TL - Title
  2258.             |UN - Poster's Note
  2259.             |FM - Poster's Name
  2260.             |DT - Date Posted
  2261.             |TI - Time Posted
  2262.             |TO - Sent To
  2263.             |ST - Status
  2264.           
  2265.           USERSTAR.ANS - User Listing Start
  2266.           
  2267.           USERMID.ANS - User Listing Middle
  2268.             |UH - User Handle
  2269.             |LE - Level
  2270.             |UN - User Note
  2271.             |AC - Area Code
  2272.             |LC - Last Call
  2273.           
  2274.           USEREND.ANS - User Listing End
  2275.           
  2276.           LASTSRT.ANS - Recent Callers Start
  2277.           
  2278.           LASTMID.ANS - Recent Callers Middle
  2279.             |UH - User Handle
  2280.             |DO - Date On
  2281.             |TO - Time On
  2282.             |BR - Baud Rate
  2283.           
  2284.           LASTEND.ANS - Recent Callers End
  2285.           
  2286.           OTHER: (Not in STAT libraries)
  2287.           
  2288.           SYSPASS.ANS - System Password Ansi
  2289.             |PP  - Place to prompt for password
  2290.             |BP  - Place to put any error messages
  2291.           
  2292.           USERLOG.ANS  - Username Ansi
  2293.             |NP  - Place to prompt for username
  2294.             |PP  - Place to prompt for password
  2295.             |QP  - Place to prompt 'Use xx for quicker login'
  2296.             |IP  - Place to prompt 'Invalid User name'
  2297.           
  2298.           QWKUP.ANS - QWK - Upload REP Packet/Process Posts ANSI
  2299.           
  2300.             |BP  - Message Base
  2301.             |SP  - Message Sent To
  2302.             |TI  - Title of Message
  2303.             |OP  - Operation Messages (IE: Echomail post etc..)
  2304.           
  2305.           QWKDN.ANS - QWK - Download QWK Packet/Archive Packet ANSI
  2306.           
  2307.           Note: All Light MCI Codes will blink until that operation
  2308.                 ends.
  2309.               : For ease, usually codes |B1 and |B2 are placed
  2310.                 adjacent.
  2311.           
  2312.             |L1  - Light #1 - Creating Control File
  2313.             |L2  - Light #2 - Creating Door Information File
  2314.             |L3  - Light #3 - Conference Light
  2315.             |L4  - Light #4 - Message Base Light
  2316.             |L5  - Light #5 - Post Information Light
  2317.             |L6  - Light #6 - Archiving Mail Packet Light
  2318.             |CP  - Current Conference #
  2319.             |BP  - Current Message Base
  2320.             |TP  - Total Posts in Message Base
  2321.             |NP  - New Posts in Message Base
  2322.             |EP  - End - Place Where Cursor Goes After Processing
  2323.             |B1  - Location of Bar + Color of Blocks as they Fill
  2324.             |B2  - Color of Background of Bar
  2325.           
  2326.           SYSSTAT.ANS - System Statistics Screen
  2327.           (This screen just uses any standard % MCI codes you want)
  2328.           
  2329.           FILEINFO.ANS - File Information Screen
  2330.             |FN  - Filename
  2331.             |UL  - Uploader
  2332.             |FP  - File Points
  2333.             |TD  - Times Downloaded
  2334.             |SK  - File Size (in bytes)
  2335.             |FK  - File Size (in kilobytes)
  2336.           
  2337.           Template: TOPTEN-??.ANS   --- ?? = the following:
  2338.           
  2339.           TOP-1.ANS  - Top ten best uploaders
  2340.           TOP-2.ANS  - Top ten worst uploaders
  2341.           TOP-3.ANS  - Top ten best downloaders
  2342.           TOP-4.ANS  - Top ten worst downloaders
  2343.           TOP-5.ANS  - Top ten best Post/Call ratios
  2344.           TOP-6.ANS  - Top ten worst Post Call ratios
  2345.           TOP-7.ANS  - Top ten best uploaders in K
  2346.           TOP-8.ANS  - Top ten worst uploaders in K
  2347.           TOP-9.ANS  - Top ten best downloaders in K
  2348.           TOP-10.ANS - Top ten worst downloaders in K
  2349.           TOP-11.ANS - Top ten best message posters
  2350.           TOP-12.ANS - Top ten worst message posters
  2351.           TOP-13.ANS - Top ten best callers
  2352.           TOP-14.ANS - Top ten worst callers
  2353.           
  2354.           TOP-XX.ANS must be in the following format. MCI Codes as
  2355.           follows:
  2356.           
  2357.             |TN - Topten Name
  2358.             |N1 - User name for position #1
  2359.             |V1 - Value for user #1
  2360.             |B1 - Bar for user #1
  2361.             |N2 - User name for position #2
  2362.             |V2 - Value for user #2
  2363.             |B2 - Bar for user #2
  2364.             |N3 - User name for position #3
  2365.             |V3 - Value for user #3
  2366.             |B3 - Bar for user #3
  2367.             |N4 - User name for position #4
  2368.             |V4 - Value for position #4
  2369.             |B4 - Bar for user #4
  2370.             |N5 - User name for position #5
  2371.             |V5 - Value for user #5
  2372.             |B5 - Bar for user #5
  2373.             |N6 - User name for position #6
  2374.             |V6 - Value for user #6
  2375.             |B6 - Bar for user #6
  2376.             |N7 - User name for position #7
  2377.             |V7 - Value for user #7
  2378.             |B7 - Bar for user #7
  2379.             |N8 - User name for position #8
  2380.             |V8 - Value for user #8
  2381.             |B8 - Bar for user #8
  2382.             |N9 - User name for position #9
  2383.             |V9 - Value for user #9
  2384.             |B9 - Bar for user #9
  2385.             |N0 - User name for position #10
  2386.             |V0 - Value for user #10
  2387.             |B0 - Bar for user #10
  2388.           
  2389.           EMAILHDR.ANS - E-Mail Header ANSI
  2390.             |FM - From
  2391.             |DT - Date
  2392.             |TM - Time
  2393.             |ST - Sent To
  2394.             |UN - Sender User Note
  2395.             |TI - Title
  2396.           
  2397.           FILE DESCRIPTION CONFIG MCI CODES:
  2398.           
  2399.           |DE - Main description line.
  2400.           |Dx - Extended description line.
  2401.           |TC - Size uncompressed.
  2402.           |CC - Size compressed.
  2403.           |UL - Uploader of file.
  2404.           |UD - Date of upload.
  2405.           |TM - Time of upload.
  2406.           |DD - Date of FILE_ID.DIZ
  2407.           |ND - Newest File Date
  2408.           |OD - Oldest File Date
  2409.  
  2410.  
  2411.  
  2412.           Background Color Codes:
  2413.  
  2414.           |16 - Black
  2415.           |17 - Blue
  2416.           |18 - Green
  2417.           |19 - Cyan
  2418.           |20 - Red
  2419.           |21 - Magenta
  2420.           |22 - Brown
  2421.           |23 - Gray
  2422.  
  2423.  
  2424.           PRINTED FILES: ALL use standard codes:
  2425.           
  2426.           NOTLEFT .ANS - No Time Left
  2427.           WELCOME .XXX - Welcome Screen
  2428.           EXPIRED .BBS - Account Expired
  2429.           SLOWBAUD.ANS - User's baud rate is too low and does not know
  2430.                          lockout pass
  2431.           PRELOGON.ANS - Prelogon Screen
  2432.           TOONODE .ANS - User already on another node
  2433.           CHECKED .XXX - User checked for access, but has level less
  2434.                          than zero XXX is a level less than 0 that the
  2435.                          user has.
  2436.           PRINT   .APP - User starts applying
  2437.           NUPBAD  .APP - Does not know NUP
  2438.           BLACKLST.ANS - User in Blacklist
  2439.           LETTER  .APP - Send letter to the sysop during application
  2440.           DONE    .APP - User done applying
  2441.           ENOUGH  .ANS - User paged more than the specified times
  2442.           GOODBYE .ANS - User logging off
  2443.           SUBS    .XXX - User viewing message base listing where XXX is
  2444.                          the conference ID, external listings are on,
  2445.                          but repeat method is not.
  2446.           XFER    .XXX - User viewing file area listing where XXX is
  2447.                          the conference ID, external listings are on,
  2448.                          but repeat method is not. (Conference ID's can
  2449.                          be found in the Conference Editor)
  2450.           LINEMENU.ANS - Help Screen for the Line Editor
  2451.           ULCHECK.ANS  - Upload checker display screen.
  2452.           SYSPASS.ANS  - Ansi displayed when prompting for System
  2453.                          Password
  2454.           USERLOG.ANS  - Ansi displayed when prompting for user
  2455.                          username and password.
  2456.           NUVDOWN.ANS  - File displayed to a user when he is turned
  2457.                          down by the new user voting committee.
  2458.           KICKOFF.ANS  - File displayed to a user when the SysOp decides
  2459.                          to kick him off using the ALT-Q key command.
  2460.  
  2461.           
  2462.                           SECTION 12: CONFIGURABLE CHAT
  2463.                           ─────────────────────────────
  2464.           
  2465.               Configurable Chat was added to allow for more
  2466.           configuration for the SysOp, therefore making his board
  2467.           different than anybody else's.  You can make horizontal split
  2468.           screen chats, vertical ones, diagonal ones, or anything that
  2469.           pops into your head. To make a chat follow the following
  2470.           instructions:
  2471.           
  2472.           1] Create the design for your chat, name this CHATDEF.ANS
  2473.              It will be placed in the TEXTFILE directory when you're
  2474.              all done.
  2475.           2] Put CHATDEF.ANS into Animation Mode, and use TOP Scan.
  2476.           3] You must now create the "Margins" for the SysOp side of
  2477.              the chat, and the user's side of the chat.  To do this,
  2478.              you'll need some MCI codes.  For the left border of each
  2479.              line of the SysOp's side, You use ^xx, and for the right
  2480.              margin of the SysOp's type, use &xx.  Do the same for the
  2481.              user side. Here are the codes for the user side, `xx for
  2482.              the left, and ~xx for the right margin.  These MCI codes
  2483.              will tell Oblivion/2 where to wordwrap each line. Here is
  2484.              an example Horizontal Split Screen Chat (Non-animated, of
  2485.              course). This will help you to get the idea of what you
  2486.              must do.
  2487.           
  2488.           ^01                                                      &01
  2489.           ^02                                                      &02
  2490.           ────────|SN───────────────Split Screen Chat───|UN───────────
  2491.           `01                                                      ~01
  2492.           `02                                                      ~02
  2493.           
  2494.               As you can see, the start MCI code will tell the program
  2495.           where to start typing, and the end MCI code will tell the
  2496.           program where to wordwrap.  If you notice, the xx has been
  2497.           replaced by numbers.  Each line must have a number, so Line
  2498.           01 will wordwrap onto Line 02. So, don't mix up the numbers
  2499.           or you'll have a REAL MESS! If you notice in the example, the
  2500.           end MCI codes have been placed right at the end of the line.
  2501.           This is because the wordwrap starts where the MCI code
  2502.           starts. Placing them as they are above will prevent any
  2503.           problems that could arise.  Place them in that fashion when
  2504.           you make your own.  Another thing to notice is the |SN and
  2505.           |UN. |SN is the MCI code for the SysOp Name, and |UN is the
  2506.           pipe code for the current user name.  These are NOT required
  2507.           in your screen. So if you want to play some kind of game with
  2508.           the user, you can do that too.
  2509.  
  2510.              This is an example of a vertical chat screen, if you want
  2511.           to do one of those instead of the horizontal shown above:
  2512.  
  2513.           ──────────────|SN──────────────┬──────────────|UN───────────
  2514.           ^01                          &01`01                      ~01
  2515.           ^02                          &02`02                      ~02
  2516.           ^03                          &03`03                      ~03
  2517.           ───────────────────────────────┴────────────────────────────
  2518.         
  2519.              In the user side, the lines `01, `02, `03 should be one
  2520.           space to the left. This will become obvious when you animate
  2521.           the screen in thedraw. The reason being that the user's type
  2522.           starts at the `xx code. You want to give the user the most
  2523.           typing he can get, so you want to start close to the middle
  2524.           line.
  2525.  
  2526.              Notice the SysOp side. Look at the &xx codes. Notice where
  2527.           I put them. The SysOp's type will end on the space where the
  2528.           &xx begins. To give the SysOp maximum typing, I put the codes
  2529.           right over the middle line. Remember, you won't overwrite this
  2530.           line because you'll animate the codes in using TheDraw.
  2531.  
  2532.  
  2533.           4] Save the Screen, and use the ANSITRAN.EXE utility if it
  2534.              doesn't show up properly.  See the docs of ANSITRAN for
  2535.              more info.
  2536.           
  2537.                There are a few options that SysOps and users can use in
  2538.           the chat mode:
  2539.           
  2540.           /TYPE - Allows the SysOp to type any file in the textfile
  2541.                   directory.
  2542.           /PAGE - In one line chat, /PAGE will page the SysOp. In split
  2543.                   screen chat, /PAGE will page the user.
  2544.  
  2545.           
  2546.                              SECTION 13: MENU EDITOR
  2547.                              ───────────────────────
  2548.           
  2549.           Introduction...............................
  2550.           "-" Control Commands.......................
  2551.           "&" MultiNode Commands.....................
  2552.           "{" Matrix Commands........................
  2553.           "!" Global Newscan Commands................
  2554.           "[" Main Menu Commands.....................
  2555.           "." Door Commands..........................
  2556.           "*" SysOp Commands.........................
  2557.           "^" New User Voting Commands...............
  2558.           "C" Conference Editor Commands.............
  2559.           "D" Data Commands..........................
  2560.           "E" Email Commands.........................
  2561.           "F" File Commands..........................
  2562.           "J" Join Conference Commands...............
  2563.           "M" Message Commands.......................
  2564.           "Q" QWKMail Commands.......................
  2565.           "R" Top Ten Listing Commands...............
  2566.           "S" Message Sponsor Commands...............
  2567.           "T" File Sponsor Commands..................
  2568.           "V" Voting Booth Commands..................
  2569.           "+" Color Setting Commands.................
  2570.           Menu Editor Function Over-View.............
  2571.           
  2572.           
  2573.                                    Introduction
  2574.           
  2575.           
  2576.                Oblivion/2 2.0 Menu Editor.  This is, in my opinion, the
  2577.           best feature ever offered in any BBS software.  The menu
  2578.           editor will allow you to modify, customize, or make a totaly
  2579.           unique menu system for your BBS.
  2580.           
  2581.                The Menu Editor is a very simple yet uses a complex
  2582.           system of commands that can be used individualy or stacked.
  2583.           The commands can be restricted to access levels, flags,
  2584.           conferences, age, and a variety other levels.
  2585.           
  2586.                Due to the fact that just about everything in Oblivion/2
  2587.           2.0 can be configured via the Menu Editor, it's pretty much
  2588.           impossible for us to show you examples of how to use every
  2589.           command (Not to mention I doubt anybody would actuly print 25
  2590.           meg of documentation). Instead we've put together a few
  2591.           samples of what can be done, and a descriptive list of all
  2592.           the available commands.  After that is's up to you and your
  2593.           imagination.  Have fun with it & take your time.
  2594.           
  2595.           
  2596.           ------------------------------------------------------------
  2597.                                  "-" = Control Commands
  2598.           ------------------------------------------------------------
  2599.           
  2600.           Command Key: -A
  2601.           Function   : Writes CString into the Header (Use With
  2602.                      : Stacking)
  2603.           CString    : <String You Would Like Displayed>
  2604.           
  2605.           
  2606.           Command Key: -B
  2607.           Function   : Sets the Bad Prompt to CString
  2608.           CString    : <String You Would Like Displayed when an invalid
  2609.                         command is entered, blank if none>
  2610.           
  2611.           
  2612.           Command Key: -C
  2613.           Function   : Clears The FailFlag
  2614.           CString    : None
  2615.           
  2616.           
  2617.           Command Key: -D
  2618.           Function   : Sends CString to the modem.
  2619.           CString    : ~ = .5 sec delay, | = Return, ^X = Ctrl-X
  2620.                      : Note: Make sure to put your modem back
  2621.                      : into online mode after you execute this
  2622.                      : command, otherwise your BBS will be hung.
  2623.                      : Use the ATO command to do this. Also, make
  2624.                      : sure to use the +++ escape sequence to put
  2625.                      : the modem into command mode. Otherwise, your
  2626.                      : commands won't get to the modem.
  2627.           
  2628.           Command Key: -E
  2629.           Function   : Writes Characters with ^ control char support
  2630.           CString    : <String to be displayed>
  2631.           
  2632.           
  2633.           Command Key: -F
  2634.           Function   : Displays A Text Or ANSi File
  2635.           CString    : <FILENAME>
  2636.           
  2637.                      <filename>     A MS-DOS filename.
  2638.           
  2639.                         This command will display a text file located
  2640.                         in the TEXTFILE directory.
  2641.           
  2642.           
  2643.           Command Key: -G
  2644.           Function   : Goes in the x,y position specified in the
  2645.                      : CString
  2646.           CString    : X,Y
  2647.           
  2648.           
  2649.           Command Key: -H
  2650.           Function   : Gets String with Hidden Input
  2651.           CString    : # <Length of Hidden Input String>
  2652.           
  2653.           
  2654.           Command Key: -I
  2655.           Function   : Gets String with Normal Input
  2656.           CString    : # <Length Of Normal Input String>
  2657.           
  2658.           
  2659.           Command Key: -M
  2660.           Function   : If the string inputted with -I or -H is not the
  2661.                      : Cstring the fail flag is set to true.
  2662.           CString    : <String To Check>
  2663.           
  2664.           
  2665.           Command Key: -N
  2666.           Function   : Displays a status screen from the current status
  2667.                        library. (Use this in correspondence with the
  2668.                        STATLIST. textfile to put status screens
  2669.                        anywhere you want.)
  2670.           CString    : <Filename to print>
  2671.                      : IE: STATUS.ANS
  2672.           
  2673.           Command Key: -J
  2674.           Function   : If the Sysop is not Available, the Fail Flag is
  2675.                      : Set to True If he/she is available, the fail
  2676.                      : flag is set to false
  2677.           CString    : None
  2678.           
  2679.           
  2680.           Command Key: -K
  2681.           Function   : Change Starting Menu to CString, so all -^ will
  2682.                        set the fallback to the old starting menu
  2683.           CString    : <Menu Name>
  2684.           
  2685.           
  2686.           Command Key: -L
  2687.           Function   : Clears the Screen
  2688.           CString    : None
  2689.           
  2690.           
  2691.           Command Key: -O
  2692.           Function   : Displays file from current status screen library
  2693.           CString    : <File from status library to display>
  2694.           
  2695.           
  2696.           Command Key: -P
  2697.           Function   : Pauses X Number of seconds
  2698.           CString    : X <Number Of Seconds>
  2699.           
  2700.           
  2701.           Command Key: -Q
  2702.           Function   : Sets the current menu prompt to the value in the
  2703.                      : cstring
  2704.           CString    : <Menu Prompt #>
  2705.           
  2706.           
  2707.           Command Key: -R
  2708.           Function   : Prints a Return
  2709.           CString    : None
  2710.           
  2711.           
  2712.           Command Key: -S
  2713.           Function   : Changes User Flags
  2714.                      : Used for the first set of ACS flags.
  2715.           CString    : <+,-> <Flag Letter>
  2716.           
  2717.                      A "-" followed by certain letters will turn off
  2718.                      That flag in the users account
  2719.           
  2720.                      A "+" Followed by certain letters will trun on
  2721.                      That Flag if it's active in the users account
  2722.           
  2723.           
  2724.           Command Key: -T
  2725.           Function   : Sets the Status Library to the Value in the
  2726.                      : Cstring
  2727.           CString    : <#>
  2728.           
  2729.                      # is the number of any Status Library
  2730.           
  2731.           
  2732.           Command Key: -V
  2733.           Function   : Sets Menu Library to the Value in the CString
  2734.           CString    : <#>
  2735.           
  2736.                      # is the number of any Menu Library
  2737.           
  2738.           
  2739.           Command Key: -U
  2740.           Function   : Sets the Starting Menu to cstring and sets the
  2741.                      : fallback of all the : menus called with the -^
  2742.                      : command to the menu name in the cstring.
  2743.           CString    : <Menu Name>
  2744.           
  2745.                           Menu Name is the name of any menu
  2746.           
  2747.           
  2748.           Command Key: -W
  2749.           Function   : Writes CString in the Log
  2750.           CString    : Whatever You Want Written in the SysOp Log
  2751.           
  2752.           This Command is good for keeping track of your SysOp's
  2753.           And Co-SysOp's By Stacking it with other commands.
  2754.           
  2755.           
  2756.           Command Key: -X
  2757.           Function   : Returns failflag if file specified by CString
  2758.                        doesn't exist.
  2759.           CString    : Filename
  2760.           
  2761.           
  2762.           Command Key: -Y
  2763.           Function   : Changes User Flags
  2764.                      : For use with the second set of user flags.
  2765.           CString    : <+,-> <Flag Letter>
  2766.           
  2767.                      A "-" followed by certain letters will turn off
  2768.                      That flag in the users account
  2769.           
  2770.                      A "+" Followed by certain letters will trun on
  2771.                      That Flag if it's active in the users account
  2772.           
  2773.           
  2774.           Command Key: -Z
  2775.           Function   : Pauses other commands until output (send)
  2776.                        buffer is empty.
  2777.           CString    : None
  2778.           
  2779.           This command is useful for displaying a textfile before
  2780.           hanging up on a user. Stack this command after your display
  2781.           textfile command and before the hangup command.
  2782.           
  2783.           
  2784.           Command Key: -+
  2785.           Function   : Displays a random WELCOME.x file from textfile
  2786.                        directory.
  2787.           CString    : None
  2788.           
  2789.           
  2790.           Command Key: -|
  2791.           Function   : Checks user's infoforms to be sure that he's
  2792.                        filled out all mandatory infoforms. If he
  2793.                        hasn't, the system will go to the infoform that
  2794.                        was not completed and force the user to complete
  2795.                        it.
  2796.           CString    : None
  2797.           
  2798.           
  2799.           Command Key: -@
  2800.           Function   : Reads system notices
  2801.           CString    : None
  2802.           
  2803.           
  2804.           Command Key: -_
  2805.           Function   : Pages the SysOp if the user has the wanted flag
  2806.                        (The wanted flag can be toggled from the online
  2807.                         user editor)
  2808.           CString    : None
  2809.           
  2810.           
  2811.           Command Key: -/
  2812.           Function   : Goes to the menu name in the Cstring and sets
  2813.                      : the fallback to the current menu
  2814.           CString    : Menu You Wanna Go To
  2815.           
  2816.           
  2817.           Command Key: -\
  2818.           Function   : Goes to the fallback menu and sets the fallback
  2819.                      : menu to the previous fallback
  2820.           CString    : Menu You Wanna Go To
  2821.           
  2822.           
  2823.           Command Key: -^
  2824.           Function   : Goes to the menu name in the Cstring and sets
  2825.                      : the fallback to the starting menu
  2826.           CString    : Menu You Wanna Go To
  2827.           
  2828.           
  2829.           Command Key: -*
  2830.           Function   : Sets the input variable usually inputted with -I
  2831.                      : and -J to the string in the Cstring
  2832.           CString    : String
  2833.           
  2834.           
  2835.           Command Key: -=
  2836.           Function   : Sets User Level to value contained in the
  2837.                      : CString
  2838.           CString    : User Level
  2839.                      : (Be carefull w/how you use this one..)
  2840.           
  2841.           
  2842.           Command Key: -&
  2843.           Function   : After The execution of an external program via
  2844.                      : door commands, the errorlevel with which the
  2845.                      : external program exited will be put into the
  2846.                      : input string, the one that is also set with -I,
  2847.                      : -J, and -M.
  2848.           
  2849.           
  2850.           Command Key: -(
  2851.           Function   : Send's The "Hit Return" prompt and waits for a
  2852.                      : return
  2853.           CString    : None
  2854.           
  2855.  
  2856.           Command Key: -)
  2857.           Function   : Changes to the infoform set specified in the
  2858.                        CString
  2859.           CString    : Infoform set to use
  2860.  
  2861.           
  2862.           Command Key: -{
  2863.           Function   : Goes to the menu specified in the CString,
  2864.                      : but will not execute any FIRSTCMD statements.
  2865.           CString    : <Menu to go to>
  2866.           
  2867.           
  2868.           Command Key: -}
  2869.           Function   : Drops to the previous menu, but will not run any
  2870.                        FIRSTCMD statements.
  2871.           CString    : None
  2872.           
  2873.           
  2874.           Command Key: -:
  2875.           Function   : Toggles locking of output to the modem.
  2876.           CString    : None
  2877.                      : Note: Use this command again to unlock the
  2878.                      : output to the modem.
  2879.           
  2880.           
  2881.           Command Key: -;
  2882.           Function   : Toggles locking input from the modem.
  2883.           CString    : None
  2884.                      : Note: Use this command again to unlock the input
  2885.                      : from the modem.
  2886.           
  2887.           
  2888.           Command Key: -$
  2889.           Function   : Goes to a menu keeping the current fallback menu
  2890.                      : and it will process FIRSTCMD statements.
  2891.           CString    : Menu name to goto.
  2892.           
  2893.           
  2894.           Command Key: -%
  2895.           Function   : Goes to a menu keeping the current fallback menu
  2896.                      : but it won't process FIRSTCMD statements.
  2897.           CString    : Menu name to goto.
  2898.           
  2899.           
  2900.           Command Key: --
  2901.           Function   : Displays and gets input in same format as prompt
  2902.                        string.
  2903.           CString    : None
  2904.           
  2905.           
  2906.           Command Key: -#
  2907.           Function   : Sets Time left to value found in CString.
  2908.           CString    : Time Left
  2909.           
  2910.  
  2911.           Command Key: -!
  2912.           Function   : Displays current menu prompt using CString
  2913.                        as the name in the prompt.
  2914.           CString    : Name in the prompt
  2915.  
  2916.  
  2917.           Command Key: -.
  2918.           Function   : Sends the file specified in the CString.
  2919.                      : Note: This command automatically checks
  2920.                      : to see that the file being sent is not
  2921.                      : in the menu or data directories. If it is,
  2922.                      : the command is aborted.
  2923.           CString    : Path and Filename of the file to be sent
  2924.  
  2925.  
  2926.           Command Key: -<
  2927.           Function   : Displays Prompt String
  2928.           CString    : Absolute Prompt #,Other Text 1φOther Text 2
  2929.  
  2930.  
  2931.           Command Key: -~
  2932.           Function   : Sets Chat Reason in Status Bar to Value in
  2933.                      : CString. If the CString is blank, the BBS
  2934.                      : removes the chat reason from the status
  2935.                      : line.
  2936.           CString    : Chat Reason, or Blank to remove chat reason
  2937.  
  2938.  
  2939.           Command Key: -"
  2940.           Function   : Sets the number of lines scrolled to 0.
  2941.                      : This is used to stop the screen from pausing
  2942.                      : for another screenful of text.
  2943.           CString    : None
  2944.  
  2945.  
  2946.           Command Key: -1
  2947.           Function   : Sets Screen Pausing (variable toggled in
  2948.                      : user config) on/off
  2949.           CString    : + sets pausing on, anything else turns pausing
  2950.                      : off.
  2951.  
  2952.  
  2953.           Command Key: -2
  2954.           Function   : Suspends Screen Pausing until next textfile
  2955.                      : display.
  2956.           CString    : + suspends pausing, and anything else returns
  2957.                      : to the default settings.
  2958.  
  2959.  
  2960.           Command Key: -,
  2961.           Function   : Sets starting Option in a pulldown Menu
  2962.           CString    : Pulldown ID of the starting option
  2963.  
  2964.  
  2965.           Command Key: -'
  2966.           Function   : Turns on Pulldown Menu Re-entrance
  2967.           CString    : None
  2968.           Explain    : This option returns to the selected option
  2969.                      : when the user re-enters the pulldown menu.
  2970.                      : This works ONLY if the command that the user
  2971.                      : executed does not go to another menu. IE: If
  2972.                      : your doors menu is set up as a pulldown menu,
  2973.                      : the user selects 'Solar Realms Elite'. Upon
  2974.                      : finishing the game, and returning to the doors
  2975.                      : menu, the option 'Solar Realms Elite' will be the
  2976.                      : highlighted option.
  2977.  
  2978.  
  2979.           Command Key: -`
  2980.           Function   : Turns off Pulldown Menu Re-Entrance
  2981.           CString    : None
  2982.  
  2983.  
  2984.           ------------------------------------------------------------
  2985.                                   & = MultiNode Commands
  2986.           ------------------------------------------------------------
  2987.           
  2988.           Command Key: &A
  2989.           Function   : Gets Page Status
  2990.           CString    : None
  2991.           
  2992.           
  2993.           Command Key: &C
  2994.           Function   : Enters Into Multinode Chat
  2995.           CString    : None
  2996.           
  2997.           Command Key: &D
  2998.           Function   : Changes the activity in the logs to
  2999.                      : the activity that you specify in
  3000.                      : the CString
  3001.           CString    : The user's new activity
  3002.  
  3003.  
  3004.           Command Key: &F
  3005.           Function   : Forces a user into multinode chat
  3006.           CString    : None
  3007.           
  3008.           
  3009.           Command Key: &L
  3010.           Function   : Views the log of a user on the other node.
  3011.           CString    : None
  3012.           
  3013.           
  3014.           Command Key: &M
  3015.           Function   : Sends a MultiNode Message to another node
  3016.           CString    : None
  3017.           
  3018.           
  3019.           Command Key: &N
  3020.           Function   : Allows a user to kick a user off of another node
  3021.           CString    : None
  3022.           
  3023.                      : Make sure to use an appropriate ACS on this
  3024.                      : option so that only certain people can access
  3025.                      : it.
  3026.           
  3027.           
  3028.           Command Key: &R
  3029.           Function   : Allows user on current node to join multinode
  3030.                      : split screen chat.
  3031.           CString    : None
  3032.           
  3033.           
  3034.           Command Key: &S
  3035.           Function   : View MultiNode Status
  3036.           CString    : None
  3037.           
  3038.           Command Key: &U
  3039.           Function   : Sends a Message to all available nodes
  3040.           CString    : None
  3041.  
  3042.  
  3043.           Command Key: &X
  3044.           Function   : Sends Message in CString to all available nodes
  3045.           CString    : Note to send
  3046.  
  3047.  
  3048.           Command Key: &[
  3049.           Function   : Sets user as available for multinode chat
  3050.           CString    : None
  3051.           
  3052.           
  3053.           Command Key: &]
  3054.           Function   : Sets user as unavailble for multinode chat.
  3055.           CString    : None
  3056.           
  3057.           
  3058.           -------------------------------------------------------------
  3059.                                   { = Matrix Commands
  3060.           -------------------------------------------------------------
  3061.           
  3062.           
  3063.           Command Key: {A
  3064.           Function   : Applies as New User.  If User completed the
  3065.                      : application, fail flag is set to false,
  3066.                      : otherwise it is true.
  3067.           CString    : None
  3068.           
  3069.           
  3070.           Command Key: {C
  3071.           Function   : Checks User Access.  If User is validated,
  3072.                      : failflag is set to false, otherwise it is true.
  3073.           CString    : None
  3074.           
  3075.           
  3076.           Command Key: {D
  3077.           Function   : If user can logon w/account and password
  3078.                      : (Doesn't need System Password), failflag is set
  3079.                      : to false, otherwise it's set to true.
  3080.                      : None
  3081.           
  3082.           Command Key: {F
  3083.           Function   : Leaves Feedback to the user number contained in
  3084.                        the cstring
  3085.           CString    : User # of the user to send Matrix FeedBack to
  3086.           
  3087.           
  3088.           Command Key: {G
  3089.           Function   : Logs Off From the Matrix
  3090.           CString    : None
  3091.           
  3092.           
  3093.           Command Key: {L
  3094.           Function   : Launches Extra System
  3095.           CString    : System Password,ErrorLevel
  3096.                      : System Password being the Password a user needs
  3097.                      : to get to the extra system, and ErrorLevel the
  3098.                      : Errorlevel that Oblivion/2 would drop at.  (ie
  3099.                      : "GETIN,58" would make the Password GETIN and
  3100.                      : would make Obv/2 drop at an ErrorLevel Of 58)
  3101.           
  3102.           
  3103.           Command Key: {P
  3104.           Function   : Matrix Chat
  3105.           CString    : None
  3106.           
  3107.           
  3108.           Command Key: {S
  3109.           Function   : Loads The Main BBS System
  3110.           CString    : x (Number between 1-999)
  3111.                      : When a CString is specified, PRELOGON.X, an
  3112.                      : USERLOG.X, and SYSPASS.X will be displayed.
  3113.                      : Using CString 1, these files would be printed
  3114.                      : PRELOGON.1, SYSPASS.1 USERLOG.1. Use for
  3115.                      : increased matrix effects.
  3116.           
  3117.           Command Key: {T
  3118.           Function   : Sets FailFlag to false if user is able to get to
  3119.                      : main system through knowing the system password
  3120.                      : and having an account.
  3121.                      : This would be used for stacking commands at the
  3122.                      : matrix without actually logging onto to the
  3123.                      : board.
  3124.           CString    : Same as for {S.
  3125.           
  3126.           
  3127.           Command Key: {X
  3128.           Function   : Drops into the BBS
  3129.           CString    : None
  3130.                      : Use This Command With Caution! - NOTE>
  3131.           
  3132.           
  3133.           
  3134.           -------------------------------------------------------------
  3135.                                   ! = Global Newscan Commands
  3136.           -------------------------------------------------------------
  3137.           
  3138.           
  3139.           Command Key: !A
  3140.           Function   : Scans Message and File Conferences
  3141.           CString    : None
  3142.           
  3143.           
  3144.           Command Key: !F
  3145.           Function   : Scans File Conferences
  3146.           CString    : None
  3147.           
  3148.           
  3149.           Command Key: !M
  3150.           Function   : Scans Message Conference
  3151.           CString    : None
  3152.           
  3153.           
  3154.           -------------------------------------------------------------
  3155.                                   [ = Main Menu Commands
  3156.           -------------------------------------------------------------
  3157.           
  3158.           
  3159.           Command Key: [A
  3160.           Function   : Edits AutoSig
  3161.           CString    : None
  3162.           
  3163.           
  3164.           Command Key: [C
  3165.           Function   : Pages Sysop
  3166.           CString    : N (Doesn't ask for reason)
  3167.                      : A (Forces SysOp to be available)
  3168.           
  3169.           Command Key: [D
  3170.           Function   : Does the Infoform with the value contained in
  3171.                      : the Cstring
  3172.           CString    : Number Of The Infoform To Fill Out
  3173.           
  3174.           
  3175.           Command Key: [F
  3176.           Function   : Fills out infoform into a textfile.
  3177.           CString    : INFOFORM#,TEMPLATE
  3178.                      : TEMPLATE format is a directory, and
  3179.                      : a filename w/o period or extension.
  3180.                      : IE: 1,C:\APPS\OBVAPP
  3181.                      : This would fill out infoform #1, and
  3182.                      : put it into the file OBVAPP.1, then
  3183.                      : OBVAPP.2, etc. These files would be
  3184.                      : located in the C:\APPS\ directory.
  3185.           
  3186.           
  3187.           Command Key: [G
  3188.           Function   : Logs Off
  3189.           CString    : None
  3190.           
  3191.           
  3192.           Command Key: [H
  3193.           Function   : Logs Off without displaying the goodbye ansi
  3194.           CString    : None
  3195.           
  3196.           
  3197.           Command Key: [I
  3198.           Function   : Fills out Infoform
  3199.           CString    : None
  3200.           
  3201.           
  3202.           Command Key: [K
  3203.           Function   : User Configuration (Goes To The "Konfig" Menu)
  3204.           CString    : <valid DOS filename>
  3205.                      : You can create multiple configuration screens
  3206.                      : by telling the BBS which screen to go to. Make
  3207.                      : sure that the screen is in your status screen
  3208.                      : library. (Read the STATCODE section on how to
  3209.                      : code an extra screen in the status libraries)
  3210.           
  3211.           Command Key: [L
  3212.           Function   : Lists Users
  3213.           CString    : None
  3214.           
  3215.           
  3216.           Command Key: [S
  3217.           Function   : System Status
  3218.           CString    : None
  3219.           
  3220.           
  3221.           Command Key: [U
  3222.           Function   : Time Bank
  3223.           CString    : {Maximum Total Time} {Maximum Time to Deposit
  3224.                      : Today} Maximum Total Time Being total time
  3225.                      : allowed in the time bank.  Maximum Time Today
  3226.                      : being the total time allowed per day.  (ie 60 15
  3227.                      : would make a max of 60 minutes and 15 minutes
  3228.                      : per day)
  3229.           
  3230.           
  3231.           
  3232.           Command Key: [V
  3233.           Function   : Views Daily Log
  3234.           CString    : # of days back to display, or blank for the
  3235.                      : complete log listing.
  3236.           
  3237.           
  3238.           Command Key: [W
  3239.           Function   : Last Callers
  3240.           CString    : 1-20
  3241.                      : Tells how many callers to list.
  3242.           
  3243.           Command Key: [X
  3244.           Function   : Transfer to User
  3245.           CString    : None
  3246.           
  3247.           
  3248.           Command Key: [Y
  3249.           Function   : Users Status
  3250.           CString    : None
  3251.           
  3252.           
  3253.           Command Key: [+
  3254.           Function   : Change Password
  3255.           CString    : None
  3256.           
  3257.  
  3258.           Command Key: [-
  3259.           Function   : Forces user to change his/her password
  3260.           CString    : None
  3261.  
  3262.  
  3263.           -------------------------------------------------------------
  3264.                                   . = Door Commands
  3265.           -------------------------------------------------------------
  3266.           
  3267.           
  3268.           Command Key: .E
  3269.           Function   : Executes file in your main BBS Directory (No
  3270.                      : Door File Created)
  3271.           CString    : %1 = Connect Rate
  3272.                      : %2 = User Number
  3273.           
  3274.           Command Key: .N
  3275.           Function   : Makes Door RBBS DORINFO1.DEF File with COM0
  3276.                      : in the DORINFO1.DEF if you are local and
  3277.                        executes file in the door directory
  3278.           CString    : <FILENAME>
  3279.           
  3280.           
  3281.           Command Key: .R
  3282.           Function   : Makes Door RBBS DORINFO1.DEF File with LOCAL in
  3283.                      : the DORINFO1.DEF if you are local and executes
  3284.                      : the file in the door directory
  3285.           CString    : <FILENAME>
  3286.           
  3287.           
  3288.           Command Key: .S
  3289.           Function   : Makes SRE DOOR.SR file and executes the file in
  3290.                      : the door directory
  3291.           CString    : <FILENAME>
  3292.           
  3293.           
  3294.           Command Key: .T
  3295.           Function   : Makes Standard DOOR.SYS file (GAP - TeleGard -
  3296.                      : WildCat 3.0+)
  3297.           
  3298.           
  3299.           
  3300.           
  3301.           
  3302.           -------------------------------------------------------------
  3303.                                   * = Sysop Commands
  3304.           -------------------------------------------------------------
  3305.           
  3306.           Note - All of the following commands can be dangerous if
  3307.                  accessed by un-authorized users.  Use them with
  3308.                  caution!
  3309.           
  3310.           Command Key: *#
  3311.           Function   : Runs The Menu Editor
  3312.           CString    : None
  3313.           
  3314.           
  3315.           Command Key: *B
  3316.           Function   : Allows The SysOp To Edit/View The Blacklist
  3317.           CString    : None
  3318.           
  3319.           
  3320.           Command Key: *C
  3321.           Function   : Enters The System Configuration Menu
  3322.           CString    : None
  3323.           
  3324.           
  3325.           Command Key: *D
  3326.           Function   : Enters MiniDos
  3327.           CString    : None
  3328.           
  3329.           
  3330.           Command Key: *E
  3331.           Function   : Edits Strings (Internal Prompts)
  3332.           CString    : None
  3333.           
  3334.           
  3335.           Command Key: *I
  3336.           Function   : Shows Infoforms
  3337.           CString    : None
  3338.           
  3339.           
  3340.           Command Key: *K
  3341.           Function   : Clears Infoforms
  3342.           CString    : None
  3343.           
  3344.           
  3345.           Command Key: *L
  3346.           Function   : Shows SysOp Log's
  3347.           CString    : None
  3348.           
  3349.           
  3350.           Command Key: *M
  3351.           Function   : Make User
  3352.           CString    : None
  3353.           
  3354.           
  3355.           Command Key: *P
  3356.           Function   : Enters the Protocol Editor
  3357.           CString    : None
  3358.           
  3359.           
  3360.           Command Key: *R
  3361.           Function   : Configures Menu Prompts
  3362.           CString    : None
  3363.           
  3364.           
  3365.           Command Key: *S
  3366.           Function   : Sets Libraries
  3367.           CString    : None
  3368.           
  3369.           
  3370.           Command Key: *T
  3371.           Function   : Runs the internal Text Editor
  3372.           CString    : None
  3373.           
  3374.           Command Key: *U
  3375.           Function   : User Editor
  3376.           CString    : None
  3377.           
  3378.           
  3379.           Command Key: *V
  3380.           Function   : Event Editor
  3381.           CString    : None
  3382.           
  3383.           
  3384.           Command Key: *X
  3385.           Function   : View Voting
  3386.           
  3387.           
  3388.           Command Key: *Y
  3389.           Function   : Parameter Editor
  3390.           CString    : None
  3391.           
  3392.           
  3393.           Command Key: *Z
  3394.           Function   : Archiver Editor
  3395.           CString    : None
  3396.           
  3397.           
  3398.           -------------------------------------------------------------
  3399.                                   ^ = New User Voting Commands
  3400.           -------------------------------------------------------------
  3401.           
  3402.           
  3403.           Command Key: ^D
  3404.           Function   : Starts new user voting without asking the user
  3405.                      : if they would like to skip it
  3406.           CString    : None
  3407.           
  3408.           
  3409.           Command Key: ^L
  3410.           Function   : Lists Users in the NUV
  3411.           CString    : None
  3412.           
  3413.           
  3414.           Command Key: ^S
  3415.           Function   : Ask's User if they would like to vote on new
  3416.                      : users
  3417.           CString    : Q
  3418.                      : If "Q" is specified as the CString, then users
  3419.                      : are forced to vote on new users. They cannot
  3420.                      : quit
  3421.  
  3422.  
  3423.           Command Key: ^Q
  3424.           Function   : Goes through the NUV without allowing the
  3425.                      : user to skip or exit.
  3426.           CString    : None
  3427.  
  3428.           Note       : ACS for all NUV commands is as follows:
  3429.                      : <NUV Level>,<Yes Votes>,<No Votes>,<Success>,
  3430.                      : <Deny>,<Val>
  3431.                      : NUV Level is the level of the users to be voted
  3432.                      : on, Yes/No Votes are the # of each required
  3433.                      : for validation or denial, Sucess/Deny Levels
  3434.                      : are the user levels given to users who pass and
  3435.                      : fail the NUV, and Val can be set to + to
  3436.                      : validate the user giving him the default levels.
  3437.  
  3438.  
  3439.           -------------------------------------------------------------
  3440.                                   C = Conference Editor
  3441.           -------------------------------------------------------------
  3442.           
  3443.           
  3444.           Command Key: CA
  3445.           Function   : Adds a Conference
  3446.           CString    : None
  3447.           
  3448.           
  3449.           Command Key: CD
  3450.           Function   : Deletes a Conference
  3451.           CString    : None
  3452.           
  3453.           
  3454.           Command Key: CE
  3455.           Function   : Edits a Conference
  3456.           CString    : None
  3457.           
  3458.           
  3459.           Command Key: CI
  3460.           Function   : Initializes Conference Editor
  3461.           CString    : None
  3462.           
  3463.           
  3464.           Command Key: CL
  3465.           Function   : List Conferences
  3466.           CString    : None
  3467.           
  3468.           
  3469.           Command Key: CR
  3470.           Function   : Reorders Conference
  3471.           CString    : None
  3472.           
  3473.           
  3474.           Command Key: CT
  3475.           Function   : Selects Conference Type
  3476.           CString    : None
  3477.           
  3478.           
  3479.           Command Key: CU
  3480.           Function   : List Users with Access to a Conference
  3481.           CString    : None
  3482.           
  3483.           
  3484.           
  3485.           -------------------------------------------------------------
  3486.                                   D = Data Area Menu
  3487.           -------------------------------------------------------------
  3488.           
  3489.           
  3490.           Command Key: DA
  3491.           Function   : Adds Data
  3492.           CString    : None
  3493.           
  3494.           
  3495.           Command Key: DD
  3496.           Function   : Deletes Data
  3497.           CString    : None
  3498.           
  3499.           
  3500.           Command Key: DC
  3501.           Function   : Edits Data in a data area
  3502.           CString    : None
  3503.  
  3504.  
  3505.           Command Key: DE
  3506.           Function   : Edits Selected Data Area
  3507.           CString    : None
  3508.           
  3509.           
  3510.           Command Key: DF
  3511.           Function   : List Data w/o asking for range limits
  3512.           CString    : None
  3513.           
  3514.           
  3515.           Command Key: DG
  3516.           Function   : Puts the data area listing into a file, and
  3517.                      : if you're remote, it will send it to you.
  3518.           CString    : None
  3519.           
  3520.                      : This option would be equivelant to listing the
  3521.                      : data area, and turning on a capture in your term
  3522.                      : program.
  3523.           
  3524.           
  3525.           Command Key: DK
  3526.           Function   : Deletes Selected Data Area
  3527.           CString    : None
  3528.           
  3529.           
  3530.           Command Key: DL
  3531.           Function   : Lists Data w/ asking for range limits
  3532.           CString    : None
  3533.           
  3534.           
  3535.           Command Key: DM
  3536.           Function   : Add Data Area
  3537.           CString    : None
  3538.           
  3539.           
  3540.           Command Key: DR
  3541.           Function   : Displays a Random Entry in this data area using
  3542.                      : the List Prefix followed by "RAN.ANS" as the
  3543.                      : ansi to tell it how it should look.
  3544.           CString    : None
  3545.           
  3546.           
  3547.           Command Key: DS
  3548.           Function   : Shows Data
  3549.           CString    : None
  3550.           
  3551.           
  3552.           Command Key: D*
  3553.           Function   : Selects Data Area in the Cstring
  3554.           CString    : # of Data Area, if blank, will let user select
  3555.                      : which
  3556.           
  3557.           
  3558.           
  3559.           -------------------------------------------------------------
  3560.                                   E = Email Commands
  3561.           -------------------------------------------------------------
  3562.           
  3563.           
  3564.           Command Key: EA
  3565.           Function   : Sysop Option to Scan Email
  3566.           CString    : None
  3567.           
  3568.           
  3569.           Command Key: EB
  3570.           Function   : Looks in a User's Mail Box
  3571.           CString    : None
  3572.           
  3573.           
  3574.           Command Key: ED
  3575.           Function   : Delete Incoming piece of Email
  3576.           CString    : # of Email - Asks For # if none is specified
  3577.           
  3578.           
  3579.           Command Key: EE
  3580.           Function   : Edits Outgoing Email
  3581.           CString    : # of Email - Asks For # If None is specified
  3582.           
  3583.           
  3584.           Command Key: EF
  3585.           Function   : Forwards Mail
  3586.           CString    : # of Email - Asks For # if None is Specified
  3587.           
  3588.           
  3589.           Command Key: EG
  3590.           Function   : Edits Groups
  3591.           CString    : None
  3592.           
  3593.           Command Key: EI
  3594.           Function   : Lists Incoming E-Mail
  3595.           CString    : None
  3596.  
  3597.  
  3598.           Command Key: EK
  3599.           Function   : Kills Outgoing Mail
  3600.           CString    : # of Email - Asks For # if None is Specified
  3601.           
  3602.           
  3603.           Command Key: EL
  3604.           Function   : Lists Mail
  3605.           CString    : None
  3606.           
  3607.           Command Key: EM
  3608.           Function   : Memorize E-Mail Message
  3609.           CString    : None
  3610.           Note       : Be sure to put the M! command in the E-Mail Menu
  3611.                      : to allow the user to download the memorized
  3612.                      : messages.
  3613.  
  3614.           Command Key: EN
  3615.           Function   : Scans for Email
  3616.           CString    : None
  3617.           
  3618.           Command Key: EO
  3619.           Function   : Lists Outgoing E-Mail
  3620.           CString    : None
  3621.  
  3622.  
  3623.           Command Key: EP
  3624.           Function   : Replies to Incoming Email
  3625.           CString    : # of Email - Asks if None is Specified
  3626.           
  3627.           
  3628.           Command Key: ER
  3629.           Function   : Read Incoming Mail
  3630.           CString    : # of Email - Asks if None is Specified
  3631.           
  3632.           
  3633.           Command Key: ES
  3634.           Function   : Sends Email
  3635.           CString    : # Of the user to send Email to - Asks if None is
  3636.                      : Specified
  3637.           
  3638.           
  3639.           Command Key: ET
  3640.           Function   : Shows Incoming/Outgoing Information
  3641.           CString    : None
  3642.           
  3643.           
  3644.           Command Key: EV
  3645.           Function   : Views Outgoing Email
  3646.           CString    : # Of Email  - Asks if None is Specified
  3647.           
  3648.           
  3649.           Command Key: EX
  3650.           Function   : Purges FileMail older than a number of days set
  3651.                      : in the config
  3652.           CString    : None
  3653.           
  3654.           Command Key: EY
  3655.           Function   : Spy Mail
  3656.                      : Allows user to read his/her mail without
  3657.                      : marking it as read.
  3658.           CString    : None
  3659.  
  3660.  
  3661.           Command Key: EZ
  3662.           Function   : Packs Email, do this every once in a while, it
  3663.                      : clears out deleted email and thus speeds up the
  3664.                      : searching for new email
  3665.           CString    : None
  3666.           
  3667.           
  3668.           Command Key: E+
  3669.           Function   : Allows user to read all mail. Used with the
  3670.                      : E-Mail tags. Read that section for more information.
  3671.           CString    : None
  3672.  
  3673.  
  3674.           Command Key: E-
  3675.           Function   : Allows user to see mail only mail addressed to him.
  3676.                      : Used with E-Mail tags. Read corresponding section.
  3677.           CString    : None
  3678.  
  3679.  
  3680.           Command Key: E$
  3681.           Function   : Sets incoming E-Mail tag to value of CString.
  3682.                      : Used with E-Mail tags. Read corresponding section.
  3683.           CString    : (0-255) - E-Mail tag to use
  3684.  
  3685.  
  3686.           Command Key: E#
  3687.           Function   : Sets outgoing tag to value of CString.
  3688.                      : Used with E-Mail tags. Read corresponding section.
  3689.           CString    : (0-255) - E-Mail tag to use
  3690.  
  3691.  
  3692.  
  3693.           -------------------------------------------------------------
  3694.                                   F = File Commands
  3695.           -------------------------------------------------------------
  3696.           
  3697.           
  3698.           Command Key: FA
  3699.           Function   : Lists File Areas Does Not Ask Which Base To
  3700.                      : Switch to
  3701.           CString    : None
  3702.           
  3703.           
  3704.           Command Key: FB
  3705.           Function   : Batch Menu
  3706.           CString    : None
  3707.           
  3708.           
  3709.           Command Key: FC
  3710.           Function   : Change Files
  3711.           CString    : FILENAME or # of first file to edit - Will ask
  3712.                      : if None is Specified
  3713.           
  3714.           
  3715.           Command Key: FD
  3716.           Function   : Downloads Files
  3717.           CString    : FILENAME of # of the first file to Download
  3718.                      : Will ask if None is Specified
  3719.           
  3720.           
  3721.           Command Key: FE
  3722.           Function   : Newscanns the current file area.
  3723.           CString    : None
  3724.           
  3725.           
  3726.           Command Key: FF
  3727.           Function   : Newscans File Areas without asking if you want
  3728.                      : to scan them all
  3729.           CString    : None
  3730.           
  3731.           
  3732.           Command Key: FG
  3733.           Function   : Custom File Operations
  3734.           CString    : Operation Name, batchfile
  3735.           
  3736.           This function is used to add functions not supported by
  3737.           Oblivion/2 into your file sections. The command works via
  3738.           a batchfile that you create. The custom file operations
  3739.           command will generate a list of files in the user's batch que
  3740.           with pathnames. This file is called FILELST. It will be found
  3741.           in the work directory. The 'operation name' part of the
  3742.           CString is the name of this operation. It will be displayed
  3743.           to users in the format of 'Enter up to 50 files to (Operation
  3744.           Name Here)' (Just like the rest of the file section does).
  3745.           The batchfile will then tell the BBS which DOS commands to
  3746.           execute to perform your operation. An example setup of this
  3747.           command is as follows. Say that you have an artwork oriented
  3748.           board, and you leave the ansis uncompressed on your HD. You
  3749.           want to let the users ZIP up all the ANSI files they want to
  3750.           download into one ZIP file for easier downloading. Say you
  3751.           want to call this operation 'Zip up'. This is the command in
  3752.           the menu editor you'd use.
  3753.           
  3754.           Command Key: FG
  3755.           CString    : Zip Up,ZIP.BAT
  3756.           
  3757.           ZIP.BAT would look like this:
  3758.           C:\OBV\PKZIP.EXE %1ZIPDANSI.ZIP @%FILELST.
  3759.           
  3760.           When executed, it would look like this:
  3761.           C:\OBV\PKZIP.EXE C:\OBV\WORK\ZIPDANSI.ZIP @C:\OBV\WORK\FILELST.
  3762.  
  3763.           
  3764.           Command Key: FI
  3765.           Function   : Inits File Areas in the file conference selected
  3766.           CString    : None
  3767.           
  3768.           
  3769.           Command Key: FK
  3770.           Function   : User Configurable File List Configuration
  3771.           CString    : None
  3772.           
  3773.           
  3774.           Command Key: FL
  3775.           Function   : Lists Files in current file area
  3776.           CString    : None
  3777.           
  3778.           
  3779.           Command Key: FM
  3780.           Function   : Bidirectional Transfer
  3781.           CString    : None
  3782.           
  3783.           Notes      : For bidirectional protocols, you need to create
  3784.                      : a progam that will convert the protocol's log
  3785.                      : files to a DSZLOG compatible log. The filename
  3786.                      : should be the same as the 'LOGNAME' option in
  3787.                      : the config with a U or D as the last part of the
  3788.                      : extension. IE: If you had C:\OBV\DSZLOG. The
  3789.                      : filename would be C:\OBV\DSZLOG.1U or DSZLOG.1D.
  3790.                      : U for upload, and D for download.
  3791.           
  3792.           
  3793.           Command Key: FN
  3794.           Function   : Newscans File Areas, asks if you want to scan
  3795.                      : them all
  3796.           CString    : None
  3797.           
  3798.           
  3799.           Command Key: FO
  3800.           Function   : Shows info for files
  3801.           CString    : FILENAME or # - Will ask if None is Specified
  3802.           CString    : None
  3803.           
  3804.  
  3805.           Command Key: FP
  3806.           Function   : Requests file (Will Generate Notice for Each
  3807.                      : File Requested)
  3808.           CString    : None
  3809.  
  3810.  
  3811.           Command Key: FQ
  3812.           Function   : Used to turn on/off options in the user's file
  3813.                      : listing configuration
  3814.           CString    : +/- (Option number)
  3815.                      : 0 Turns off All options
  3816.           Example    : CString: 0+127 first turns off all options, and
  3817.                      : then turns on options 1,2, and 7.
  3818.  
  3819.           Command Key: FR
  3820.           Function   : Resumes file(s)
  3821.           CString    : FILENAME or # - Will Ask if None is Specified
  3822.           
  3823.           
  3824.           Command Key: FS
  3825.           Function   : Sets File Area
  3826.           CString    : Area # - if zero, Obv/2 will prompt
  3827.           
  3828.           
  3829.           Command Key: FT
  3830.           Function   : Type file(s)
  3831.           CString    : FILENAME or # - Will Ask if None is Specified
  3832.           
  3833.           
  3834.           Command Key: FU
  3835.           Function   : Upload
  3836.           CString    : None
  3837.           
  3838.           
  3839.           Command Key: FV
  3840.           Function   : Views files
  3841.           CString    : None
  3842.           
  3843.           
  3844.           Command Key: FW
  3845.           Function   : Lists users with access to the current file
  3846.                      : area.
  3847.           CString    : None
  3848.  
  3849.  
  3850.           Command Key: FX
  3851.           Function   : Extract file(s)
  3852.           CString    : FILENAME or # - Will Ask if None is Specified
  3853.           
  3854.           
  3855.           Command Key: FY
  3856.           Function   : File Status
  3857.           CString    : FILENAME or # - Will Ask if None is Specified
  3858.           
  3859.           
  3860.           Command Key: FZ
  3861.           Function   : Search for File
  3862.           CString    : None
  3863.           
  3864.           
  3865.           Command Key: F[
  3866.           Function   : Previous Area
  3867.           CString    : None
  3868.           
  3869.           
  3870.           Command Key: F]
  3871.           Function   : Next Area
  3872.           CString    : None
  3873.           
  3874.           
  3875.           Command Key: F|
  3876.           Function   : Generate Complete File List
  3877.           CString    : None
  3878.           
  3879.           
  3880.           Command Key: F=
  3881.           Function   : Toggles on/off scrollable file listing.
  3882.           CString    : Y = ON, N = OFF
  3883.           
  3884.           Command Key: TG
  3885.           Function   : Create/Update File Catalog
  3886.           CString    : None
  3887.           
  3888.                      : The file catalog is a data file that contains
  3889.                      : the filenames of all files on your system. The
  3890.                      : BBS reads this file for some operations. This
  3891.                      : method is very fast, but before you can use it,
  3892.                      : you must create the catalog data file with this
  3893.                      : menu command. Also make sure to toggle the
  3894.                      : option 'Use file catalog' in the CONFIG.
  3895.           
  3896.           
  3897.           
  3898.           
  3899.           -------------------------------------------------------------
  3900.                                   J = Join Conference
  3901.           -------------------------------------------------------------
  3902.           
  3903.           
  3904.           Command Key: JF
  3905.           Function   : Joins Relative File Conference
  3906.           CString    : Conference # - Will ask if None is Specified.
  3907.                      : If the User types, Q, the fail flag will be set
  3908.                      : Otherwise it will not be. What Relative
  3909.                      : Conference means is the number of the conference
  3910.                      : that the user sees This means, that if there are
  3911.                      : 3 conferences to which user has access, the
  3912.                      : relative file conference number corresponds
  3913.                      : to the number of the conference in the listing
  3914.           
  3915.           
  3916.           Command Key: JM
  3917.           Function   : Joins Relative Message Conference
  3918.           CString    : Conference # - Will Ask if None is Specified
  3919.                      : If the User types, Q, the fail flag will be set
  3920.                      : Otherwise it will not be What Relative
  3921.                      : Conference means is the number of the conference
  3922.                      : that the user sees This means, that if there are
  3923.                      : 3 conferences to which user has access, the
  3924.                      : relative file conference number corresponds
  3925.                      : to the number of the conference in the listing
  3926.           
  3927.           Command Key: JS
  3928.           Function   : Joins Absolute Message Conference
  3929.           CString    : Conference ID #
  3930.                      : Will set the message conference to the
  3931.                      : conference that has the conference ID of the
  3932.                      : Cstring.  Unlike the relative conferences
  3933.                      : the number never varies, however with this
  3934.                      : command, a user can join a deleted conference or
  3935.                      : one to which he does not have access
  3936.           
  3937.           
  3938.           Command Key: JT
  3939.           Function   : Joins Absolute File Conference
  3940.           CString    : Conference ID #
  3941.                      : Will set the message conference to the
  3942.                        conference that has the conference ID of the
  3943.                        Cstring.  Unlike the relative conferences the
  3944.                        number never varies, however with this command,
  3945.                        a user can join a deleted conference or one to
  3946.                        which he does not have access
  3947.           
  3948.           
  3949.           
  3950.           
  3951.           -------------------------------------------------------------
  3952.                                   M = Message Commands
  3953.           -------------------------------------------------------------
  3954.           
  3955.           
  3956.           Command Key: MB
  3957.           Function   : Backwards title scan
  3958.           CString    : None
  3959.           
  3960.           
  3961.           Command Key: MC
  3962.           Function   : Newscan Config for the current conference
  3963.           CString    : None
  3964.           
  3965.           
  3966.           Command Key: MD
  3967.           Function   : Deletes a Message
  3968.           CString    : None
  3969.           
  3970.           
  3971.           Command Key: ME
  3972.           Function   : Edits a Message
  3973.           CString    : None
  3974.           
  3975.           
  3976.           Command Key: MF
  3977.           Function   : Message Newscans all areas
  3978.           CString    : None
  3979.  
  3980.           
  3981.           Command Key: MG
  3982.           Function   : Display BCHANGE.ANS
  3983.           CString    : None
  3984.  
  3985.  
  3986.           Command Key: MH
  3987.           Function   : Sets Message Header
  3988.           CString    : 0 = Internal
  3989.                      : 1 = External
  3990.                      : 2 = HEADER.1, 3=HEADER.2 etc...
  3991.                      : HEADER.X files can be found in your status
  3992.                      : screen library or textfile directory.
  3993.           
  3994.           
  3995.           Command Key: MI
  3996.           Function   : Inits Message Bases in this conferences
  3997.           CString    : None or N
  3998.                      : If "N" is the CString, then the BCHANGE.ANS
  3999.                      : Header will not be displayed.
  4000.           
  4001.           Command Key: MJ
  4002.           Function   : Newscans by type, but does NOT update
  4003.                      : message pointers.
  4004.           CString    : T,F,D,I, or X
  4005.                      : T = To Current User
  4006.                      : F = From Current User
  4007.                      : D = After Date
  4008.                      : I = Containing Certain Information
  4009.                      : X = Containing Certain Text
  4010.  
  4011.  
  4012.           Command Key: ML
  4013.           Function   : Lists Message Bases in this conference
  4014.           CString    : None
  4015.           
  4016.  
  4017.           Command Key: MM
  4018.           Function   : Memorize Message in CString
  4019.           CString    : # to memorize, if no # is specified, the BBS
  4020.                      : will prompt the user.
  4021.  
  4022.  
  4023.           Command Key: MN
  4024.           Function   : Newscans w/ prompt to scan all
  4025.           CString    : None
  4026.  
  4027.           
  4028.           Command Key: MO
  4029.           Function   : Newscans messages by Type, updates pointers
  4030.           CString    : See MJ Menu Command
  4031.  
  4032.  
  4033.           Command Key: MP
  4034.           Function   : Posts Message
  4035.           CString    : None
  4036.           
  4037.           
  4038.           Command Key: MR
  4039.           Function   : Reads Messages
  4040.           CString    : None
  4041.           
  4042.           
  4043.           Command Key: MS
  4044.           Function   : Selects Message Base
  4045.           CString    : # of Messages base - if 0 Obv/2 will prompt
  4046.           
  4047.           
  4048.           Command Key: MT
  4049.           Function   : Reads Messages in this base in reply reading
  4050.                      : newscan
  4051.           CString    : None
  4052.           
  4053.           
  4054.           Command Key: MU
  4055.           Function   : Lists Users w/ access to this conference
  4056.           CString    : None
  4057.           
  4058.           
  4059.           Command Key: MV
  4060.           Function   : Reads Messages in this base w/ normal reading
  4061.                      : newscan
  4062.           CString    : None
  4063.           
  4064.           
  4065.           Command Key: MW
  4066.           Function   : Forward Title Scan
  4067.           CString    : # of message to start scan
  4068.           
  4069.           
  4070.           Command Key: MZ
  4071.           Function   : Scans for new system news
  4072.           CString    : None
  4073.           
  4074.           
  4075.           Command Key: M[
  4076.           Function   : Previous Message Base
  4077.           CString    : None
  4078.           
  4079.           
  4080.           Command Key: M]
  4081.           Function   : Next Message Base
  4082.           CString    : None
  4083.           
  4084.           
  4085.           Command Key: M!
  4086.           Function   : Download Message Capture
  4087.           CString    : None
  4088.           
  4089.           
  4090.           Command Key: N#
  4091.           Function   : Reads the message with the # specified in the
  4092.                      : CString
  4093.           CString    : Message # to read.
  4094.           
  4095.           
  4096.           Command Key: NA
  4097.           Function   : Reads the current message again.
  4098.           CString    : None
  4099.           
  4100.           
  4101.           Command Key: NB
  4102.           Function   : Backward thread of messages.
  4103.           CString    : None
  4104.           
  4105.           
  4106.           Command Key: ND
  4107.           Function   : Delete current message.
  4108.           CString    : None
  4109.           
  4110.           
  4111.           Command Key: NE
  4112.           Function   : Edits the current message.
  4113.           CString    : None
  4114.           
  4115.           
  4116.           Command Key: NF
  4117.           Function   : Forward Title scan with pointer advance
  4118.           CString    : None
  4119.           
  4120.           
  4121.           Command Key: NI
  4122.           Function   : Sets the fail flag to true if the user is at the
  4123.                      : last message.
  4124.           CString    : None
  4125.           
  4126.           
  4127.           Command Key: NL
  4128.           Function   : Sets the fail flag to true if the user is at the
  4129.                      : last message base.
  4130.           CString    : None
  4131.           
  4132.  
  4133.           Command Key: NM
  4134.           Function   : Memorize Current Message
  4135.           CString    : None
  4136.  
  4137.  
  4138.           Command Key: NN
  4139.           Function   : Reads next message.
  4140.           CString    : None
  4141.           
  4142.           
  4143.           Command Key: NO
  4144.           Function   : Backward title scan from current message.
  4145.           CString    : None
  4146.           
  4147.           
  4148.           Command Key: NP
  4149.           Function   : Private Reply to Message.
  4150.           CString    : None
  4151.  
  4152.  
  4153.           Command Key: NR
  4154.           Function   : Reply to the current message.
  4155.           CString    : None
  4156.           
  4157.           
  4158.           Command Key: NT
  4159.           Function   : Forward title scan from current message.
  4160.           CString    : None
  4161.           
  4162.           
  4163.           Command Key: NU
  4164.           Function   : Update current message as lastread message.
  4165.           CString    : None
  4166.           
  4167.           
  4168.           Command Key: NX
  4169.           Function   : Backward Title scan with pointer retreat
  4170.           CString    : None
  4171.           
  4172.           
  4173.           Command Key: NY
  4174.           Function   : Returns failflag if current base is not in
  4175.                        newscan
  4176.           
  4177.           
  4178.           -------------------------------------------------------------
  4179.                                   Q = QWKMail Menu
  4180.           -------------------------------------------------------------
  4181.           
  4182.           
  4183.           Command Key: QD
  4184.           Function   : Updates Last Read Message # to the first message
  4185.                      : after the date specified.
  4186.           CString    : None
  4187.           
  4188.           Command Key: QL
  4189.           Function   : Allows the user to edit the last QWK Reply
  4190.                      : Upload Date
  4191.           CString    : None
  4192.  
  4193.  
  4194.           Command Key: QM
  4195.           Function   : Make QWK Packet
  4196.           CString    : None
  4197.           
  4198.                      : Hitting ESC two times aborts the creation of a
  4199.                      : QWK packet.
  4200.           
  4201.           Command Key: QR
  4202.           Function   : Receives REP Packet
  4203.           CString    : None
  4204.           
  4205.           
  4206.           Command Key: QU
  4207.           Function   : Updates user pointers so that all messages
  4208.                      : are marked as READ.
  4209.           CString    : None
  4210.           
  4211.                      : You might want to force your users to use this
  4212.                      : when they first login so that they don't DL a
  4213.                      : huge QWK packet.
  4214.           
  4215.           
  4216.           -------------------------------------------------------------
  4217.                                   R = Top Ten Listing
  4218.           -------------------------------------------------------------
  4219.           
  4220.           Note for ALL Top Ten menu commands: If you put a * after your
  4221.           header (in the CString field), the top ten listing will NOT
  4222.           pause (prompt for return).
  4223.           
  4224.           
  4225.           Command Key: RA   (Top Ten #1)
  4226.           Function   : Top Ten List by Top Uploaders
  4227.           CString    : Header
  4228.           
  4229.           
  4230.           Command Key: RB   ( Top Ten #2)
  4231.           Function   : Top Ten List by Worst Uploaders
  4232.           CString    : Header
  4233.           
  4234.           
  4235.           Command Key: RC   (Top Ten #3)
  4236.           Function   : Top Ten List by Top Downloaders
  4237.           CString    : Header
  4238.           
  4239.           
  4240.           Command Key: RD   (Top Ten #4)
  4241.           Function   : Top Ten List by Worst Downloaders
  4242.           CString    : Header
  4243.           
  4244.           
  4245.           Command Key: RE   (Top Ten #5)
  4246.           Function   : Top Ten List by Top PCR
  4247.           CString    : Header
  4248.           
  4249.           
  4250.           Command Key: RF   (Top Ten #6)
  4251.           Function   : Top Ten List by Worst PCR
  4252.           CString    : Header
  4253.           
  4254.           
  4255.           Command Key: RG   (Top Ten #7)
  4256.           Function   : Top Ten List by Top K Uploaded
  4257.           CString    : Header
  4258.           
  4259.           
  4260.           Command Key: RH   (Top Ten #8)
  4261.           Function   : Top Ten List by Worst K Uploaded
  4262.           CString    : Header
  4263.           
  4264.           
  4265.           Command Key: RI   (Top Ten #9)
  4266.           Function   : Top Ten List by Top K Downloaded
  4267.           CString    : Header
  4268.           
  4269.           
  4270.           Command Key: RJ   (Top Ten #10)
  4271.           Function   : Top Ten List by Worst K Downloaded
  4272.           CString    : Header
  4273.           
  4274.           
  4275.           Command Key: RK   (Top Ten #11)
  4276.           Function   : Top Ten List by Top Posters
  4277.           CString    : Header
  4278.           
  4279.           
  4280.           Command Key: RL   (Top Ten #12)
  4281.           Function   : Top Ten List by Worst Posters
  4282.           CString    : Header
  4283.           
  4284.           
  4285.           Command Key: RM   (Top Ten #13)
  4286.           Function   : Top Ten List by Top Callers
  4287.           CString    : Header
  4288.           
  4289.           
  4290.           Command Key: RN   (Top Ten #14)
  4291.           Function   : Top Ten List by Worst Callers with header in
  4292.                      : Cstring
  4293.           CString    : Header
  4294.           
  4295.           
  4296.           
  4297.           -------------------------------------------------------------
  4298.                                   S = Message Base Sponsor
  4299.           -------------------------------------------------------------
  4300.           
  4301.           Command Key: SC
  4302.           Function   : Copy One Message Area to Another Area
  4303.           CString    : None
  4304.  
  4305.  
  4306.           Command Key: SE
  4307.           Function   : Edit Current Message Base
  4308.           CString    : None
  4309.           
  4310.           
  4311.           Command Key: SK
  4312.           Function   : Kill Current Message Base
  4313.           CString    : None
  4314.           
  4315.           
  4316.           Command Key: SM
  4317.           Function   : Make Message Base
  4318.           CString    : None
  4319.           
  4320.           
  4321.           Command Key: SP
  4322.           Function   : Packs Message Bases
  4323.           CString    : None
  4324.           
  4325.           
  4326.           Command Key: SR
  4327.           Function   : Reorders Message Bases
  4328.           CString    : None
  4329.  
  4330.           
  4331.           Command Key: SX
  4332.           Function   : Moves a Message from one base to another
  4333.           CString    : None
  4334.  
  4335.  
  4336.           Command Key: S@
  4337.           Function   : Toggles Access to all file bases
  4338.           CString    : None
  4339.           
  4340.           
  4341.           
  4342.           -------------------------------------------------------------
  4343.                                   T = File Sponsor Commands
  4344.           -------------------------------------------------------------
  4345.           
  4346.           
  4347.           Command Key: TA
  4348.           Function   : Add Files
  4349.           CString    : None
  4350.           
  4351.           
  4352.           Command Key: TC
  4353.           Function   : Offline Clean Up, takes files that are not
  4354.                      : present out of the file listings
  4355.           CString    : None
  4356.           
  4357.           
  4358.           Command Key: TD
  4359.           Function   : Delete Files
  4360.           CString    : FILENAME or # to start list - Will Ask if None
  4361.                      : is Specified
  4362.           
  4363.           
  4364.           Command Key: TE
  4365.           Function   : Edit Current File Area
  4366.           CString    : None
  4367.           
  4368.           
  4369.           Command Key: TF
  4370.           Function   : Move Files
  4371.           CString    : FILENAME or # to start list - Will Ask if None
  4372.                      : is Specified
  4373.           
  4374.           
  4375.           Command Key: TJ
  4376.           Function   : If a file doesn't exist in the directory
  4377.                      : specified by its individual file record, the
  4378.                      : path will be changed to the one of the area.
  4379.           CString    : None
  4380.           
  4381.                      : This command should be used when you want to
  4382.                      : move a whole area from one drive to another one.
  4383.                      : Instead of editing every file's directory,
  4384.                      : simply move the files to the new drive, change
  4385.                      : the area's directory, and then run this command.
  4386.                      : All of the files will be updated to the new
  4387.                      : directory.
  4388.           
  4389.           
  4390.           Command Key: TK
  4391.           Function   : Kill File Area
  4392.           CString    : None
  4393.           
  4394.           
  4395.           Command Key: TM
  4396.           Function   : Make File Area
  4397.           CString    : None
  4398.  
  4399.          
  4400.           Command Key: TN
  4401.           Function   : Copys One File Area to Another
  4402.           CString    : None
  4403.  
  4404.  
  4405.           Command Key: TP
  4406.           Function   : Global Point Reassign
  4407.           CString    : None
  4408.           
  4409.           
  4410.           Command Key: TR
  4411.           Function   : Re-Order Areas
  4412.           CString    : None
  4413.           
  4414.           
  4415.           Command Key: TS
  4416.           Function   : Sort Areas
  4417.           CString    : None
  4418.           
  4419.           
  4420.           Command Key: TT
  4421.           Function   : Offline Tag, Tags files that are not there as
  4422.                      : offline and offline : files that have been
  4423.                      : returned as online.
  4424.           CString    : None
  4425.           
  4426.           
  4427.           Command Key: TU
  4428.           Function   : Global Local Upload
  4429.           CString    : None
  4430.           
  4431.           
  4432.           Command Key: TV
  4433.           Function   : File Validation
  4434.           CString    : None
  4435.           
  4436.           
  4437.           Command Key: T@
  4438.           Function   : Toggles Access to all file areas
  4439.           CString    : None
  4440.           
  4441.           
  4442.           Command Key: T+
  4443.           Function   : Increases the user's file points by the value
  4444.                      : found in the CString
  4445.           CString    : # of points to add the user's record
  4446.  
  4447.  
  4448.           Command Key: T-
  4449.           Function   : Decreases the user's file points by the value
  4450.                      : found in the CString
  4451.           CString    : # of points to remove from the user's record
  4452.  
  4453.  
  4454.           Command Key: T=
  4455.           Function   : Sets the user's file points to the value in
  4456.                      : the CString
  4457.           CString    : # (Value to set user's points to)
  4458.  
  4459.  
  4460.           -------------------------------------------------------------
  4461.                                   V = Voting Commands
  4462.           -------------------------------------------------------------
  4463.           
  4464.           
  4465.           Command Key: VA
  4466.           Function   : Add Question
  4467.           CString    : None
  4468.           
  4469.           
  4470.           Command Key: VC
  4471.           Function   : Checks for unanswered mandatory questions
  4472.           CString    : None
  4473.           
  4474.           
  4475.           Command Key: VD
  4476.           Function   : Deletes voting question
  4477.           CString    : # of voting question to delete - will prompt if
  4478.                        blank
  4479.           
  4480.           
  4481.           Command Key: VL
  4482.           Function   : Lists Voting Questions
  4483.           CString    : None
  4484.           
  4485.           
  4486.           Command Key: VR
  4487.           Function   : Answers Voting Question
  4488.           CString    : # of voting question - Will Prompt if zero
  4489.           
  4490.           
  4491.           Command Key: VS
  4492.           Function   : Shows Results to Voting Question
  4493.           CString    : # of voting question - Will Prompt if zero
  4494.           
  4495.           
  4496.           
  4497.           
  4498.           
  4499.           -------------------------------------------------------------
  4500.                                   + = Color Setting Commands
  4501.           -------------------------------------------------------------
  4502.           
  4503.           
  4504.           Command Key: +1
  4505.           Function   : Sets Regular Color
  4506.           CString    : Color (ie 15 would set to white)
  4507.           
  4508.           
  4509.           Command Key: +2
  4510.           Function   : Sets Prompt Color
  4511.           CString    : Color
  4512.           
  4513.           
  4514.           Command Key: +3
  4515.           Function   : Sets Input Color
  4516.           CString    : Color
  4517.           
  4518.           
  4519.           Command Key: +4
  4520.           Function   : Sets Inverse Color
  4521.           CString    : Color
  4522.           
  4523.           
  4524.           Command Key: +5
  4525.           Function   : Sets Stat Color
  4526.           CString    : Color
  4527.           
  4528.           
  4529.           Command Key: +6
  4530.           Function   : Sets Box Color
  4531.           CString    : Color
  4532.           
  4533.           
  4534.           Command Key: +S
  4535.           Function   : Sets your colors to the default colors defined
  4536.                      : in the System Configuration
  4537.           CString    : None
  4538.           
  4539.           
  4540.           -------------------------------------------------------------
  4541.                               Oblivion/2 Menu Editor
  4542.           -------------------------------------------------------------
  4543.           
  4544.                Oblivion/2's Menu Editor is much like Telegard /
  4545.           Renegade's Menu editing system.  There are some expanded
  4546.           functions that should be known.
  4547.           
  4548.           The main menu editing interface consists of 9 commands.
  4549.           A sample of the interface is shown below. (Scaled down)
  4550.           
  4551.           ╒═══════════════════════════════════════════════════════════╕
  4552.           │ Command :           (Q)uit      Oblivion/2 Menu Editor    │
  4553.           ╘═══════════════════════════════════════════════════════════╛
  4554.           ╒═══════════════════════════════════════════════════════════╕
  4555.           │ (A) Name           : BBS List                             │
  4556.           │ (B) Password       :                                      │
  4557.           │ (C) Fallback Menu  :                                      │
  4558.           │ (D) Help ID        : BBSLIST                              │
  4559.           │ (E) Name In Prompt : BBS List                             │
  4560.           │ (F) Menu Title     : BBS List                             │
  4561.           │ (G) Pulldown ANSI  :                                      │
  4562.           │ (H) Edit Options                                          │
  4563.           │ (I) Generic Menus                                         │
  4564.           ╘═══════════════════════════════════════════════════════════╛
  4565.           
  4566.                (A) The first command is plain and simple... The name of
  4567.                    the menu. It is there for the user's reference.
  4568.                (B) A Password for the menu can be specified.
  4569.                (C) A Fallback menu.  This is the menu that will be used
  4570.                    as a return of fallback.  If no fallback is
  4571.                    specified, then the system will make the last menu
  4572.                    in the stack as the default fallback.
  4573.                (D) This is the ID for the file to be hardcoded when
  4574.                    Menu Libraries are coded. (ie: MAIN = MAIN.ANS in a
  4575.                    menu LIB file)
  4576.                (E) Menu Title To Be Displayed in the menu prompt.
  4577.                (F) (Reserved) There may be utilities that may use them
  4578.                    such as ones that will generate generic menus that
  4579.                    look half-way decent. That is if anyone gets around
  4580.                    to writing the utility.
  4581.                (G) Pulldown Ansi.  This option will be explained
  4582.                    further in the documentation.
  4583.                (H) Allows Editing of the menu's actual options
  4584.                (I) Displays a generic menu.
  4585.           
  4586.                   Most of these options are pretty much self
  4587.                   explanitory, so if you don't understand what one does
  4588.                   - experiment.
  4589.           
  4590.           
  4591.           
  4592.           -------------------------------------------------------------
  4593.                   (H) Edit Options.  The following is a sample screen
  4594.                       of the option editor.
  4595.           
  4596.           
  4597.           1  FIRSTCMD        D* 2  A*              -A 3  A*          DA
  4598.           4  D*              DD 5  L*              DL 6  S*          DS
  4599.           7  Q*              -\
  4600.           (A)dd (C)hange (D)elete (M)ove (Q)uit :
  4601.           
  4602.           
  4603.                From this menu there isn't all that much to do.  You
  4604.           can simply add, delete, move, or change menu
  4605.           functions.
  4606.           
  4607.           
  4608.                To Edit an option, hit C then the option number.
  4609.           The following screen will be displayed.
  4610.           
  4611.           
  4612.           ╒═══════════════════════════════════════════════════════════╕
  4613.           │Command :           (Q)uit    Oblivion/2 Command Editor    │
  4614.           ╘═══════════════════════════════════════════════════════════╛
  4615.           ╒═══════════════════════════════════════════════════════════╕
  4616.           │ (A) Option Name    :                                      │
  4617.           │ (B) ACS            :                                      │
  4618.           │ (C) Hidden         : No                                   │
  4619.           │ (D) Command Keys   : D*                                   │
  4620.           │ (E) Keys           : *D                                   │
  4621.           │ (F) Command String : 1                                    │
  4622.           │ (G) Pulldown ID    : 0                                    │
  4623.           │ (+) Next Option                                           │
  4624.           │ (-) Previous Option                                       │
  4625.           ╘═══════════════════════════════════════════════════════════╛
  4626.           
  4627.           
  4628.                    (A) Option Name - Name Of the option the way you
  4629.                        want it displayed in a generic menu.  (This is
  4630.                        also used in a pulldown menu.  SEE Pullown Menus
  4631.                        for more)
  4632.                    (B) ACS - Access Level, Flag, or other restriction
  4633.                        to use for this option.
  4634.                    (C) Hidden - Determines if the option name will be
  4635.                        displayed in a generic menu.  (This is also used
  4636.                        in pulldown menus)
  4637.                    (D) Command Keys - The actual Command that will be
  4638.                        executed.
  4639.                    (E) Keys - this is the key, or keys used to execute
  4640.                        the command. You can put FIRSTCMD to execute the
  4641.                        command when the user goes to the menu or EACH
  4642.                        to do it before the prompt is drawn, every time
  4643.                        the user is at the menu.
  4644.                    (F) Command String - Some commands will allow the
  4645.                        use of a command string.  See each command for a
  4646.                        command string(s) if any.
  4647.                    (G) Pulldown ID - This is used in pulldown menus.
  4648.                        (SEE Pulldown Menus for more)
  4649.           
  4650.           -------------------------------------------------------------
  4651.           
  4652.           In the Pulldown Filename, there can be the following:
  4653.           
  4654.           <blank>
  4655.             Draws Menu Prompt with the name in the prompt in the prompt
  4656.             and does standard input
  4657.           
  4658.           ::X
  4659.             Where X is a letter in the alphabet. Randomly picks a
  4660.             letter from A to X, and will act as if the user pressed
  4661.             that key.
  4662.           
  4663.             Example: Random Matrices
  4664.             The above command can be used to easily make random
  4665.             matrices. Say that you have 4 matrices that you want to
  4666.             randomize. Since D is the 4th letter of the alphabet, your
  4667.             pulldown filename will be ::D. (Without the period) In your
  4668.             MATRIX.MNU, you'll have need to have four commands with the
  4669.             'Key' Field set to A,B,C,D. Now, for each command, you'll
  4670.             want it to go to a different menu. That new menu will be
  4671.             one of your matrices. Here's an example of one command that
  4672.             you'll have in the MATRIX.MNU.
  4673.           
  4674.           Description : Go to DOS Matrix
  4675.           Hidden      : No
  4676.           Command Keys: -^   (GOTO Menu)
  4677.           Key         : A
  4678.           CString     : DOSMAT
  4679.           
  4680.             Do the same thing for the other 3 letters. Note that you
  4681.             can't have other commands in the menu as they won't be
  4682.             executed. Only commands that will be executed will be the
  4683.             ones with the keys A-D.
  4684.           
  4685.           N
  4686.             Writes the Name in the Prompt alone
  4687.           
  4688.               May Contain:
  4689.           
  4690.                   ^R - Regular Color      ^S - Status Color
  4691.                   ^P - Prompt Color       ^E - Input Color
  4692.                   ^V - Inverse Color      ^X - Box Color
  4693.                   ^M - Goes down a line
  4694.           
  4695.               Using The Following To End:
  4696.                   / Yes/No Bar Prompt beginning with No
  4697.                   \ Yes/No Bar Prompt beginning with Yes
  4698.                   = Yes/No/Quit Bar Prompt Beginning with Yes
  4699.                   | Yes/No/Quit Bar Prompt Beginning with No
  4700.                   @ Yes/No/Quit Bar Prompt Beginning with Quit
  4701.                   * Inputs String
  4702.                   : Inputs String with a : in a different color
  4703.                   # Hotkey without Echo
  4704.                   ) Hotkey with Echo
  4705.                   ( Sets the string equal to the Input Question
  4706.                     varaible set with -I, -J, or -M
  4707.           
  4708.           You can use the following characters in the keys of a menu
  4709.           using a name in prompt ending with a # or ).
  4710.  
  4711.                 ALT-200 (Up)    ALT-208 (Down)  ALT-205 (Right)
  4712.                 ALT-203 (Left)  ALT-199 (Home)  ALT-207 (End)
  4713.  
  4714.           All pipe codes are also applicable in this prompt.
  4715.           
  4716.               This command is used to make menus that ask questions,
  4717.           create hotkeyed type menus, or get input from users.
  4718.           
  4719.           Bx
  4720.             Does Bar selection menu with x number of columns
  4721.           
  4722.           R
  4723.             Uses a one-line bar menu. When creating command stacks,
  4724.             make sure to only put a description on the first option in
  4725.             the stack, otherwise your whole command stack will appear
  4726.             on this menu. Also, make sure that all options don't exceed
  4727.             80 colums, as this is a ONE line bar menu. If your options
  4728.             exceed the 80 column limit, use the bar menus.
  4729.           
  4730.           
  4731.           <filename.ext>
  4732.           
  4733.               With this option in the menu editor, you can create your
  4734.           own pulldown menus! You'll need to create an ansi design for
  4735.           your menu and add in a few MCI codes to tell the BBS where to
  4736.           place information. There are two types of MCI codes that
  4737.           you'll need to use for this menu. The first, |xx, tells the
  4738.           BBS where to put the highlight bar. The second type is the
  4739.           %xx, this tells the BBS what color to use when the option is
  4740.           not highlighted. When you place these codes in your ansi, it
  4741.           becomes practical to place them next to each other like this.
  4742.           |xx%xx. You can include any other |xx color codes (1-15) to
  4743.           change colors in the unhighlighted display. Use the |- command
  4744.           to return to the original unhighlighted color.
  4745.           
  4746.               These xx's must be replaced by numbers so that the BBS
  4747.           knows which option to execute. Thats where the pulldown ID
  4748.           field of the menu editor comes into play. You need to give
  4749.           each one of your options a unique ID#. Start at 1 for the
  4750.           first option, and then use 2 for the second option and so on.
  4751.           If you're stacking commands for a certain part of your menu,
  4752.           only give the first command a pulldown ID.
  4753.           
  4754.               So, say you want to make a pulldown matrix with 5
  4755.           options. Logon, Check, Apply, Feedback, and Logoff. Create
  4756.           your MATRIX.MNU, and add in each of these 5 options. (Look at
  4757.           the above documentation for all of the menu commands to use).
  4758.           After that is done, go back and place a pulldown ID for each
  4759.           option. Since you have 5 options, and no command stacking,
  4760.           just give login a pulldown ID of 1, Check a 2, Apply a 3,
  4761.           Feedback a 4, and Logoff a 5. After you've done this, create
  4762.           your ANSI for the pulldown menu. Put in the MCI codes as
  4763.           described above, and your menu is all ready to go.
  4764.           
  4765.               Now, say that you wanted to make that same matrix but you
  4766.           wanted to use some type of command stacking in it. For
  4767.           example: Say that you want the BBS to login a user after
  4768.           they've checked and found out that they have access. This is
  4769.           done by using the failflag and a few menu commands. Since
  4770.           this option requires more than one menu command, it's called
  4771.           a command 'stack'. Now, the first option in this stack is
  4772.           going to be the check command. Only use the pulldown ID for
  4773.           this command, and not for any other command in the stack.
  4774.           (For this example, the other command would be the Drop into
  4775.           BBS menu command {X. Make sure not to give that a pulldown
  4776.           ID.)
  4777.           
  4778.               Now, you're probably wondering why you only put an ID on
  4779.           the first command in the stack. Think about it this way, you
  4780.           only want the pulldown bar to go onto the options that the
  4781.           user can execute, and not commands that you've customized to
  4782.           perform more than one function. Only the first function
  4783.           should have the ID.
  4784.           
  4785.               Instead of only using up and down in your pulldowns, you
  4786.           can use left and right. Below are the sybmols that you'll
  4787.           need to use in the "Keys" field for the BBS to recognize left
  4788.           and right.
  4789.           
  4790.           Left : ╦  (ALT-203)
  4791.           Right: ═  (ALT-205)
  4792.           
  4793.           If you want to use left/right, make the option(s) hidden, and
  4794.           give them a pulldown ID of 0.
  4795.           
  4796.           If you put "L" as the name in prompt of a pulldown menu, left
  4797.           will be interpreted as up, and right will be interpreted as down.
  4798.  
  4799.               Another handy option that you might consider using is the
  4800.           hidden flag. You can make a hidden option that doesn't appear
  4801.           on the pulldown menu, but that the user can execute via
  4802.           hotkey. So, give your hidden option a pulldown ID of 0, and
  4803.           turn on the hidden flag, and the command will become
  4804.           hotkeyed, and you'll be able to execute it w/o using the bar.
  4805.           
  4806.           
  4807.             There is wildcarding for menu commands:
  4808.           
  4809.               If you set the Key to X*, then you can put * in the
  4810.               Cstring and that will put what follows the X in the
  4811.               Cstring. This is advisable for such cases as file
  4812.               conference jumping such as J* with would do JM with a
  4813.               Cstring of * so one could J1,J2, etc.
  4814.           
  4815.             Also a possibility for CString is & in which is set to the
  4816.           input gotten with -I, -J, or set with -*.
  4817.           
  4818.                There are a few special menus in the editor. One, called
  4819.           MATRIX.MNU, is your logon matrix. You can call other menus
  4820.           with it, but your starting menu must be MATRIX.MNU. A second
  4821.           important menu is called GLOBAL.MNU. In this menu, every
  4822.           command will you add will be valid on every other menu.
  4823.           (Example, adding a goodbye command into the GLOBAL.MNU will
  4824.           allow your users to hang up at any menu.)
  4825.           
  4826.                A second thing you'll see mentioned in the menu editor
  4827.           is called 'Command Stacking'. Think of this as command
  4828.           linking. One command can do more than one operation. For
  4829.           example, you can have a command that clears the screen (-L),
  4830.           and prints a file to the screen (-F). To do this, you need to
  4831.           make your 'Keys' Field in the menu editor identical. Example:
  4832.           Create a command with 'Keys' as "T". Make one command with
  4833.           the 'Command Keys' as -L, and another with 'Command Keys' as
  4834.           -F. Make sure the 'Keys' field is "T" in both. Notice now,
  4835.           that the command will first clear the screen (-L), and then
  4836.           print a file (-F) (Enter a filename in the Cstring of the -F
  4837.           command). This is a simple example, but the idea is the same.
  4838.           Stacks get bigger and more complicated, but the general idea
  4839.           stays the same. (Notice examples below)
  4840.           
  4841.           
  4842.             Examples:
  4843.               GOODBYE.MNU - Pulldown Logoff Verify Menu
  4844.           
  4845.           ╒═══════════════════════════════════════════════════════════╕
  4846.           │ Command :           (Q)uit       Oblivion/2 Menu Editor   │
  4847.           ╘═══════════════════════════════════════════════════════════╛
  4848.           ╒═══════════════════════════════════════════════════════════╕
  4849.           │ (A) Name           :                                      │
  4850.           │ (B) Password       :                                      │
  4851.           │ (C) Fallback Menu  :                                      │
  4852.           │ (D) Help ID        :                                      │
  4853.           │ (E) Name In Prompt :                                      │
  4854.           │ (F) Menu Title     :                                      │
  4855.           │ (G) Pulldown ANSI  : LOGOFF.ANS                           │
  4856.           │ (H) Edit Options                                          │
  4857.           │ (I) Generic Menus                                         │
  4858.           ╘═══════════════════════════════════════════════════════════╛
  4859.           
  4860.           Use Pulldown Ansi LOGOFF.ANS
  4861.           
  4862.           ╒═══════════════════════════════════════════════════════════╕
  4863.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4864.           ╘═══════════════════════════════════════════════════════════╛
  4865.           ╒═══════════════════════════════════════════════════════════╕
  4866.           │ (A) Option Name    :                                      │
  4867.           │ (B) ACS            :                                      │
  4868.           │ (C) Hidden         : Yes                                  │
  4869.           │ (D) Command Keys   : [G                                   │
  4870.           │ (E) Keys           : Y                                    │
  4871.           │ (F) Command String :                                      │
  4872.           │ (G) Pulldown ID    : 0                                    │
  4873.           │ ([) Previous Option                                       │
  4874.           │ (]) Next Option                                           │
  4875.           ╘═══════════════════════════════════════════════════════════╛
  4876.           
  4877.           Y as a hotkey to logoff
  4878.           
  4879.           ╒═══════════════════════════════════════════════════════════╕
  4880.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4881.           ╘═══════════════════════════════════════════════════════════╛
  4882.           ╒═══════════════════════════════════════════════════════════╕
  4883.           │ (A) Option Name    :                                      │
  4884.           │ (B) ACS            :                                      │
  4885.           │ (C) Hidden         : Yes                                  │
  4886.           │ (D) Command Keys   : -\                                   │
  4887.           │ (E) Keys           : N                                    │
  4888.           │ (F) Command String :                                      │
  4889.           │ (G) Pulldown ID    : 0                                    │
  4890.           │ ([) Previous Option                                       │
  4891.           │ (]) Next Option                                           │
  4892.           ╘═══════════════════════════════════════════════════════════╛
  4893.           
  4894.           N as a hotkey to go back
  4895.           
  4896.           ╒═══════════════════════════════════════════════════════════╕
  4897.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4898.           ╘═══════════════════════════════════════════════════════════╛
  4899.           ╒═══════════════════════════════════════════════════════════╕
  4900.           │ (A) Option Name    :  Yes                                 │
  4901.           │ (B) ACS            :                                      │
  4902.           │ (C) Hidden         : No                                   │
  4903.           │ (D) Command Keys   : [G                                   │
  4904.           │ (E) Keys           : 1                                    │
  4905.           │ (F) Command String :                                      │
  4906.           │ (G) Pulldown ID    : 1                                    │
  4907.           │ ([) Previous Option                                       │
  4908.           │ (]) Next Option                                           │
  4909.           ╘═══════════════════════════════════════════════════════════╛
  4910.           
  4911.           " Yes" will appear in pulldown option 1 and when selected it
  4912.           will do a logoff.
  4913.           
  4914.           ╒═══════════════════════════════════════════════════════════╕
  4915.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4916.           ╘═══════════════════════════════════════════════════════════╛
  4917.           ╒═══════════════════════════════════════════════════════════╕
  4918.           │ (A) Option Name    :  No                                  │
  4919.           │ (B) ACS            :                                      │
  4920.           │ (C) Hidden         : No                                   │
  4921.           │ (D) Command Keys   : -\                                   │
  4922.           │ (E) Keys           : 2                                    │
  4923.           │ (F) Command String :                                      │
  4924.           │ (G) Pulldown ID    : 2                                    │
  4925.           │ ([) Previous Option                                       │
  4926.           │ (]) Next Option                                           │
  4927.           ╘═══════════════════════════════════════════════════════════╛
  4928.           
  4929.           " No" will appear in pulldown option 2 and when selected it
  4930.           will go back.
  4931.           
  4932.           Another example, the not very nice case.  This was devised by
  4933.           me, Darkened Enmity for Whiplash.  He wanted to use a
  4934.           pulldown menu to select file conferences. I got the idea of
  4935.           the -* command and the use of & in the CString.  I knew that
  4936.           would work, and the next day I wrote out the codes. This is
  4937.           the CONFHAND.MNU for you to look at since it is complex,
  4938.           but will allow you to understand how things are done. There
  4939.           is a menu called CONFSEL.MNU that will select the file
  4940.           conference in a pulldown.  CONFHAND is called like this:
  4941.           
  4942.           Command 1 in Stack:
  4943.           Command Keys  : -*
  4944.           Keys          : T*
  4945.           Command String: *
  4946.           
  4947.           Command 2 in Stack:
  4948.           Command Keys  : -/
  4949.           Keys          : T*
  4950.           Command String: CONFHAND
  4951.           
  4952.           Now here is CONFHAND.MNU:
  4953.           ╒═════════════════════════════════════════════════════════╕
  4954.           │ Command :           (Q)uit     Oblivion/2 Menu Editor   │
  4955.           ╘═════════════════════════════════════════════════════════╛
  4956.           ╒═════════════════════════════════════════════════════════╕
  4957.           │ (A) Name           :                                    │
  4958.           │ (B) Password       :                                    │
  4959.           │ (C) Fallback Menu  :                                    │
  4960.           │ (D) Help ID        :                                    │
  4961.           │ (E) Name In Prompt :                                    │
  4962.           │ (F) Menu Title     :                                    │
  4963.           │ (G) Pulldown ANSI  :                                    │
  4964.           │ (H) Edit Options                                        │
  4965.           │ (I) Generic Menus                                       │
  4966.           ╘═════════════════════════════════════════════════════════╛
  4967.           
  4968.           Not very interesting, but then the user does not even know
  4969.           that it is doing anything.
  4970.           
  4971.           ╒═══════════════════════════════════════════════════════════╕
  4972.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4973.           ╘═══════════════════════════════════════════════════════════╛
  4974.           ╒═══════════════════════════════════════════════════════════╕
  4975.           │ (A) Option Name    :                                      │
  4976.           │ (B) ACS            :                                      │
  4977.           │ (C) Hidden         : No                                   │
  4978.           │ (D) Command Keys   : -S                                   │
  4979.           │ (E) Keys           : FIRSTCMD                             │
  4980.           │ (F) Command String : -B                                   │
  4981.           │ (G) Pulldown ID    : 0                                    │
  4982.           │ ([) Previous Option                                       │
  4983.           │ (]) Next Option                                           │
  4984.           ╘═══════════════════════════════════════════════════════════╛
  4985.           
  4986.           Turns off the B user flag.  It will be used later in the menu
  4987.           as an indicator.
  4988.           
  4989.           ╒═══════════════════════════════════════════════════════════╕
  4990.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  4991.           ╘═══════════════════════════════════════════════════════════╛
  4992.           ╒═══════════════════════════════════════════════════════════╕
  4993.           │ (A) Option Name    :                                      │
  4994.           │ (B) ACS            :                                      │
  4995.           │ (C) Hidden         : No                                   │
  4996.           │ (D) Command Keys   : -M                                   │
  4997.           │ (E) Keys           : FIRSTCMD                             │
  4998.           │ (F) Command String :                                      │
  4999.           │ (G) Pulldown ID    :  0                                   │
  5000.           │ ([) Previous Option                                       │
  5001.           │ (]) Next Option                                           │
  5002.           ╘═══════════════════════════════════════════════════════════╛
  5003.           
  5004.           Compares the inputted variable with a blank string.
  5005.           Remember, before CONFHAND was called, the inputted variable
  5006.           was set to what was entered after T by the -* command.  If
  5007.           what was entered was blank, the failflag is false, otherwise
  5008.           it is true.
  5009.           
  5010.           ╒══════════════════════════════════════════════════════════╕
  5011.           │ Command :           (Q)uit    Oblivion/2 Command Editor  │
  5012.           ╘══════════════════════════════════════════════════════════╛
  5013.           ╒══════════════════════════════════════════════════════════╕
  5014.           │ (A) Option Name    :                                     │
  5015.           │ (B) ACS            : \                                   │
  5016.           │ (C) Hidden         : No                                  │
  5017.           │ (D) Command Keys   : -S                                  │
  5018.           │ (E) Keys           : FIRSTCMD                            │
  5019.           │ (F) Command String : +B                                  │
  5020.           │ (G) Pulldown ID    : 0                                   │
  5021.           │ ([) Previous Option                                      │
  5022.           │ (]) Next Option                                          │
  5023.           ╘══════════════════════════════════════════════════════════╛
  5024.           
  5025.           This command will be executed if the failflag is true, in
  5026.           other words, what was entered after T was not blank.
  5027.           Therefore, if the user had type T1, then
  5028.           B will be set, otherwise it remains blank.
  5029.           
  5030.           ╒═══════════════════════════════════════════════════════════╕
  5031.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  5032.           ╘═══════════════════════════════════════════════════════════╛
  5033.           ╒═══════════════════════════════════════════════════════════╕
  5034.           │ (A) Option Name    :                                      │
  5035.           │ (B) ACS            : fB                                   │
  5036.           │ (C) Hidden         : No                                   │
  5037.           │ (D) Command Keys   : JF                                   │
  5038.           │ (E) Keys           : FIRSTCMD                             │
  5039.           │ (F) Command String : &                                    │
  5040.           │ (G) Pulldown ID    : 0                                    │
  5041.           │ ([) Previous Option                                       │
  5042.           │ (]) Next Option                                           │
  5043.           ╘═══════════════════════════════════════════════════════════╛
  5044.           
  5045.           If flag B is set, the BBS will do a file conference jump to
  5046.           that conference. A trace through up until this point: User
  5047.           enters Txxx  xxx is put into the input variable  The BBS
  5048.           compares xxx to a blank string They are not equal, flag B is
  5049.           set The BBS joins relative file conference xxx
  5050.           
  5051.           ╒═══════════════════════════════════════════════════════════╕
  5052.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  5053.           ╘═══════════════════════════════════════════════════════════╛
  5054.           ╒═══════════════════════════════════════════════════════════╕
  5055.           │ (A) Option Name    :                                      │
  5056.           │ (B) ACS            : fB                                   │
  5057.           │ (C) Hidden         : No                                   │
  5058.           │ (D) Command Keys   : -C                                   │
  5059.           │ (E) Keys           : FIRSTCMD                             │
  5060.           │ (F) Command String :                                      │
  5061.           │ (G) Pulldown ID    : 0                                    │
  5062.           │ ([) Previous Option                                       │
  5063.           │ (]) Next Option                                           │
  5064.           ╘═══════════════════════════════════════════════════════════╛
  5065.           
  5066.           Turns failflag off, thats necessary to know if the next
  5067.           command failed.
  5068.           
  5069.           
  5070.           ╒═══════════════════════════════════════════════════════════╕
  5071.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  5072.           ╘═══════════════════════════════════════════════════════════╛
  5073.           ╒═══════════════════════════════════════════════════════════╕
  5074.           │ (A) Option Name    :                                      │
  5075.           │ (B) ACS            : fB                                   │
  5076.           │ (C) Hidden         : No                                   │
  5077.           │ (D) Command Keys   : FI                                   │
  5078.           │ (E) Keys           : FIRSTCMD                             │
  5079.           │ (F) Command String :                                      │
  5080.           │ (G) Pulldown ID    : 0                                    │
  5081.           │ ([) Previous Option                                       │
  5082.           │ (]) Next Option                                           │
  5083.           ╘═══════════════════════════════════════════════════════════╛
  5084.           
  5085.           Tries doing a file initialization.  If its successful, fail
  5086.           flag is still false.
  5087.           
  5088.           
  5089.           ╒══════════════════════════════════════════════════════════╕
  5090.           │ Command :           (Q)uit    Oblivion/2 Command Editor  │
  5091.           ╘══════════════════════════════════════════════════════════╛
  5092.           ╒══════════════════════════════════════════════════════════╕
  5093.           │ (A) Option Name    :                                     │
  5094.           │ (B) ACS            : fB~\                                │
  5095.           │ (C) Hidden         : No                                  │
  5096.           │ (D) Command Keys   : -^                                  │
  5097.           │ (E) Keys           : FSCAN                               │
  5098.           │ (F) Command String :                                     │
  5099.           │ (G) Pulldown ID    : 0                                   │
  5100.           │ ([) Previous Option                                      │
  5101.           │ (]) Next Option                                          │
  5102.           ╘══════════════════════════════════════════════════════════╛
  5103.           
  5104.           If flag B is set and the file init was successful, the BBS
  5105.           will go to FSCAN, the menu that asks if you want to scan the
  5106.           file bases.
  5107.           
  5108.           
  5109.           ╒═══════════════════════════════════════════════════════════╕
  5110.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  5111.           ╘═══════════════════════════════════════════════════════════╛
  5112.           ╒═══════════════════════════════════════════════════════════╕
  5113.           │ (A) Option Name    :                                      │
  5114.           │ (B) ACS            : fB                                   │
  5115.           │ (C) Hidden         : No                                   │
  5116.           │ (D) Command Keys   : -^                                   │
  5117.           │ (E) Keys           : FIRSTCMD                             │
  5118.           │ (F) Command String : MAIN                                 │
  5119.           │ (G) Pulldown ID    : 0                                    │
  5120.           │ ([) Previous Option                                       │
  5121.           │ (]) Next Option                                           │
  5122.           ╘═══════════════════════════════════════════════════════════╛
  5123.           
  5124.           If flag B is set, meaning the BBS would have tried initing
  5125.           the file section and was not successful, and the BBS is still
  5126.           reading CONFHAND, then the BBS will go to the main menu.
  5127.           
  5128.           
  5129.           ╒═══════════════════════════════════════════════════════════╕
  5130.           │ Command :           (Q)uit    Oblivion/2 Command Editor   │
  5131.           ╘═══════════════════════════════════════════════════════════╛
  5132.           ╒═══════════════════════════════════════════════════════════╕
  5133.           │ (A) Option Name    :                                      │
  5134.           │ (B) ACS            :                                      │
  5135.           │ (C) Hidden         : No                                   │
  5136.           │ (D) Command Keys   : -^                                   │
  5137.           │ (E) Keys           : FIRSTCMD                             │
  5138.           │ (F) Command String : CONFSEL                              │
  5139.           │ (G) Pulldown ID    : 0                                    │
  5140.           │ ([) Previous Option                                       │
  5141.           │ (]) Next Option                                           │
  5142.           ╘═══════════════════════════════════════════════════════════╛
  5143.           
  5144.           If you are still in this menu, meaning that the user did not
  5145.           enter anything at the prompt, then go right ahead to CONFSEL.
  5146.           
  5147.           Yeah, a complex example that does not do much physically,
  5148.           yeah, I know, but it demonstrates a lot, plus it shows some
  5149.           similarities between high-level menu editing and assembly.
  5150.           
  5151.                       SECTION 14: MESSAGE / FILE BASE SETUP
  5152.                       ─────────────────────────────────────
  5153.           
  5154.                Setting up message and file bases is quite easy. Both
  5155.           message and file bases have editors for easy changing of
  5156.           options. In the message menu, the editor looks just like
  5157.           this:
  5158.           
  5159.           ╒═══════════════════════════════════════════════════════════╕
  5160.           │ Command :           (Q)uit       Oblivion/2 Base Editor   │
  5161.           ╘═══════════════════════════════════════════════════════════╛
  5162.           ╒═══════════════════════════════════════════════════════════╕
  5163.           │ (A) Base Name      : System News                          │
  5164.           │ (B) Access ACS     : S30                                  │
  5165.           │ (C) Post ACS       : S255                                 │
  5166.           │ (D) Allow Anonymous: No                                   │
  5167.           │ (E) Sponsor        : Lord Tracer                          │
  5168.           │ (F) Origin Line    :                                      │
  5169.           │ (G) EchoMail Dir   :                                      │
  5170.           │ (H) NetMail        : No                                   │
  5171.           │ (I) Node           :                                      │
  5172.           │ (J) QWKName        : SYSNEWS                              │
  5173.           │ (K) Autodelete     : 200                                  │
  5174.           │ (L) Real Names     : No                                   │
  5175.           │ (M) Base File Name : NEWS                                 │
  5176.           │ (N) Mandatory      : Yes                                  │
  5177.           │ (O) Allow Private  : No                                   │
  5178.           ╘═══════════════════════════════════════════════════════════╛
  5179.           
  5180.           
  5181.           Base Name           - Name of message base.
  5182.           Access ACS          - ACS required to get into message base.
  5183.           Post ACS            - ACS required to post in message base.
  5184.           Allow Anonymous     - Can users post anonymously in this
  5185.                                 message base?
  5186.           Sponsor             - Pseudo-SysOp. Can delete all messages,
  5187.                                 read all messages in the current base.
  5188.           Origin Line         - Line BBS adds to the end of a
  5189.                                 echomailed message. Usually showed BBS
  5190.                                 name and #. Pipe codes supported.
  5191.           Echomail directory  - Directory where echomail MSG files
  5192.                                 will be held, imported, and exported
  5193.                                 from.
  5194.           Netmail             - Should this base support private
  5195.                                 netmail through Fidonet mail. For this
  5196.                                 option to work, you must compile a copy
  5197.                                 of your nodelist and place it in your
  5198.                                 Echomail directory. Compile the
  5199.                                 nodelist as filename nodelist.dat, and
  5200.                                 using BINKLEY6 format. The reason you
  5201.                                 must compile the nodelist in the
  5202.                                 echomail directory is for the nodelist
  5203.                                 lookup function of the BBS. The BBS
  5204.                                 will allow users to search the nodelist
  5205.                                 for the node that they wish to send
  5206.                                 netmail to.
  5207.           Node                - Assigned to you by your network
  5208.                                 moderator. Basically shows location.
  5209.                                 Form varies, but usually its X:XXX/XXX.
  5210.           QWKName             - Shortened name of the message base to
  5211.                                 be displayed to users in their offline
  5212.                                 readers. Most offline readers cannot
  5213.                                 support message base names over 10-12
  5214.                                 spaces. Use this option so that users
  5215.                                 can better recognize which base they
  5216.                                 are in from their reader.
  5217.           Autodelete          - How many total messages do you want in
  5218.                                 the message base. When the # of
  5219.                                 messages in the base is equal to the
  5220.                                 number in this field, 5 messages will
  5221.                                 be erased. This keeps your message base
  5222.                                 files from growing increasingly large.
  5223.           Real names          - Should the user's real name be used in
  5224.                                 place of a handle in this message base?
  5225.           Base filename       - This is an up to 8 character filename
  5226.                                 that the BBS will use to store your
  5227.                                 messages in.
  5228.           Mandatory           - When this flag is set to Yes, all the
  5229.                                 messages in this base will be forced.
  5230.                                 Users must read these messages. Use
  5231.                                 message bases like this for news.
  5232.           Allow private       - Should users be able to post private
  5233.                                 messages in this base. Use this flag if
  5234.                                 the network you're in supports private
  5235.                                 echomailing.
  5236.           
  5237.                Using the base filename, you can create a 'shared'
  5238.           message base. What this means is that you can have the same
  5239.           message base in more than one conference, or if you run
  5240.           multiple Systems, can have it on two different boards. (ie:
  5241.           System one, and System two can have identical message bases
  5242.           if the sysop should wish). To create a shared message base,
  5243.           use the same base filename in two message areas. They will
  5244.           then be shared. Once you post a message in one area, it will
  5245.           appear in both, and vice versa. When you wish to remove a
  5246.           shared message base, you have an option. You can either
  5247.           delete the data file, or leave it. By deleting the data file
  5248.           in a shared area, both message bases that were sharing that
  5249.           data file will lose all of their messages. By leaving the
  5250.           data file there, you can remove the base from one place, but
  5251.           keep it in another.
  5252.           
  5253.                To create a message base for system news, it takes a few
  5254.           simple steps. First, create a message base, and name it
  5255.           System news, or whatever you want. Fill out the rest of the
  5256.           questions. When you come to 'Mandatory', turn it to Yes. When
  5257.           a user logs on, the BBS will check this message base for new
  5258.           posts, and then proceed to show them to the user. (Look at
  5259.           the example screen for the message base editor. This is an
  5260.           ideal setup for news.)
  5261.           
  5262.                Another thing to be clear about: If you ever have a base
  5263.           that you are using for echomail, and want to turn off
  5264.           echomail, do this: Edit the Import/Export directory setting,
  5265.           and then press 'CTRL-Y'. The field will be cleared. Press
  5266.           enter. Now, this base is no longer an echomail base, but now
  5267.           a normal message base.
  5268.           
  5269.                When going to edit a file base, you will be presented
  5270.           with a similar looking editor. It looks a little like this:
  5271.           
  5272.           ╒═══════════════════════════════════════════════════════════╕
  5273.           │ Command :           (Q)uit       Oblivion/2 Area Editor   │
  5274.           ╘═══════════════════════════════════════════════════════════╛
  5275.           ╒═══════════════════════════════════════════════════════════╕
  5276.           │ (A) Area Name      : New Uploads                          │
  5277.           │ (B) Access ACS     : S25                                  │
  5278.           │ (C) Upload ACS     : S25                                  │
  5279.           │ (D) Download ACS   : S25                                  │
  5280.           │ (E) List ACS       : S25                                  │
  5281.           │ (F) Sponsor        : Lord Tracer                          │
  5282.           │ (G) Password       :                                      │
  5283.           │ (H) Area File Name : UPLOADS                              │
  5284.           │ (I) Path           : C:\UPLOAD\                           │
  5285.           │ (J) Default Sort   : F                                    │
  5286.           │ (K) Multipiler     : 1                                    │
  5287.           │ (L) Free Area      : No                                   │
  5288.           ╘═══════════════════════════════════════════════════════════╛
  5289.           
  5290.           Area Name           - The name of the current file area.
  5291.           Access ACS          - ACS required to enter the file area.
  5292.           Upload ACS          - ACS required to upload to the area.
  5293.           Download ACS        - ACS required to download from the area.
  5294.           List ACS            - ACS required to list files in the area.
  5295.           Sponsor             - Pseudo SysOp of the file area. User
  5296.                                 gets extended functions.
  5297.           Password            - Password required to enter file area.
  5298.           Area filename       - Filename (w/o extension) that the BBS
  5299.                                 will use to store file information for
  5300.                                 the current area.
  5301.           Path                - Path to the files for this area.
  5302.           Default sort        - Sort type to use when sorting the file
  5303.                                 areas. (example: F=filename,
  5304.                                 E=extension etc..)
  5305.           Multiplier          - When you set the points of a file, that
  5306.                                 value is multiplied by the number you
  5307.                                 put here. This is used to make
  5308.                                 downloading from one area cost more
  5309.                                 than downloading from others. If you
  5310.                                 don't want to use this option, set it
  5311.                                 to 1.
  5312.           Free Area           - If this is set to yes, all files in the
  5313.                                 area are marked as free and no credit
  5314.                                 is deducted for their download.
  5315.           
  5316.                You may also create 'shared' file areas. Read the above
  5317.           paragraphs for explanations on how to do this.
  5318.           
  5319.           
  5320.                           SECTION 15: THE UPLOAD CHECKER
  5321.                           ──────────────────────────────
  5322.           
  5323.                The upload checker will check all uploaded files for CRC
  5324.           errors, viruses, age, and can optionally add/delete files, or
  5325.           add a comment to your uploaded files. Operation of the
  5326.           checker is quite simple. It only requires the creation of one
  5327.           screen.  This screen, called ULCHECK.ANS, will be the display
  5328.           to the user when files are being checked. Making this screen
  5329.           is really easy, there are a few MCI codes to use in the
  5330.           screen.  They are as follows:
  5331.           
  5332.           |FN  - Filename
  5333.           |B1  - ■ in CRC Checking.
  5334.           |M1  - Strings displayed during CRC checking.
  5335.           |B2  - ■ in virus scanning.
  5336.           |M2  - Strings displayed in virus scanning.
  5337.           |B3  - ■ in age tests.
  5338.           |M3  - Strings displayed during age testing.
  5339.           |B4  - ■ in deleting files from archive.
  5340.           |M4  - Strings displayed during deleting.
  5341.           |B5  - ■ in adding files.
  5342.           |M5  - Strings displayed in adding files.
  5343.           |B6  - ■ in comment adding.
  5344.           |M6  - Strings displayed when adding comments.
  5345.           |B7  - ■ in file maintainence. (MAINTAIN.BAT)
  5346.           |M7  - Strings displayed when running MAINTAIN.BAT.
  5347.           
  5348.                These codes are pretty easy to figure out. Each option
  5349.           has a blinking ■ that is displayed when that operation is in
  5350.           process. When the option completes, the ■ will stop blinking.
  5351.           The |Bx MCI goes where you want the ■ to go for each option.
  5352.           The |Mx MCI codes go where you want any progress/error
  5353.           messages displayed about the current operation. All of these
  5354.           messages can be configured via the string editor.
  5355.           
  5356.                All of the setup for the upload checker is done in the
  5357.           CONFIG program, specifically under 'System Options #2'. You
  5358.           can completely toggle off the checker, or certain operations
  5359.           of it by leaving the field blank. For example, if you don't
  5360.           want to add any files to your checked files, then leave
  5361.           'Files to add' in the CONFIG blank. The same goes for
  5362.           commenting, or scanning.
  5363.           
  5364.                A nice feature of the upload checker is that it can
  5365.           perform age constraint testing on your uploaded files. In
  5366.           System Options #2, there is a date field. Set this to
  5367.           whatever you want, and if the newest file is older than the
  5368.           date specified, the file will fail the upload checking.
  5369.           
  5370.                The unique part of the upload checker is that you can
  5371.           perform additional maintainence via a batch file called
  5372.           MAINTAIN.BAT. (Note: FILE_ID.DIZ checking is now internal to
  5373.           the upload checker, so you don't have to create a special
  5374.           maintain.bat that will extract FILE_ID.DIZ). There are two %
  5375.           codes that can be used in the maintain.bat. These are %1 for
  5376.           filename, and %2 for path of the work directory. Note that %2
  5377.           will also include the trailing backslash of the work
  5378.           directory's path.
  5379.           
  5380.           
  5381.                         SECTION 16: CONFIGURABLE ARCHIVERS
  5382.                         ──────────────────────────────────
  5383.           
  5384.                The configurable archiver system allows the SysOp to
  5385.           setup multiple archivers, and allow the BBS to use these
  5386.           archivers for various operations. You can configure as many
  5387.           archivers as you want, and the users will be able to choose
  5388.           which archiver they want to use. The BBS will then use their
  5389.           default choice to pack QWK packets, pack message captures,
  5390.           pack filelists etc, View Files, Extract Files etc..
  5391.           
  5392.                Another good thing about the archiver system is that it
  5393.           can automatically detect what type of archive it's working
  5394.           with. It doesn't use the extension, but it uses the signature
  5395.           to find out what type of archive is present. A signature is a
  5396.           certain identification string that lets you identify what
  5397.           type of archive is being used. More on this will be explained
  5398.           later.
  5399.           
  5400.                Editing, and adding archivers is quite simple. The menu
  5401.           command for configurable archivers is *Z. Once you're in the
  5402.           archiver editor, the screen will look a bit like this:
  5403.            
  5404.           ╒═══════════════════════════════════════════════════════════╕
  5405.           │ Command :           (Q)uit   Oblivion/2 Archiver Editor   │
  5406.           ╘═══════════════════════════════════════════════════════════╛
  5407.           ╒═══════════════════════════════════════════════════════════╕
  5408.           │ (A) Archive Name   : PKZIP                                │
  5409.           │ (B) Archive Ext.   : ZIP                                  │
  5410.           │ (C) Use Zip Viewer : Yes                                  │
  5411.           │ (D) Swap for Coms  : Yes                                  │
  5412.           │ (E) Compress Com   : PKZIP.EXE %1 %2                      │
  5413.           │ (F) Extract Com    : PKUNZIP.EXE %1 %3 %2                 │
  5414.           │ (G) View Com       : VIEWZIP.BAT                          │
  5415.           │ (H) Make SFX Com   : ZIP2EXE.EXE %1                       │
  5416.           │ (I) Error/Test Com : 1/PKUNZIP.EXE -T %1                  │
  5417.           │ (J) Add Comment Com: ADDCOM.BAT                           │
  5418.           │ (K) Add Files Com  : PKZIP.EXE -A %1 %2                   │
  5419.           │ (L) Sig String     : PK                                   │
  5420.           │ (M) Sig Location   : 1                                    │
  5421.           │ (N) List Prefix    : @                                    │
  5422.           │ (O) Checker Only   : No                                   │
  5423.           │ (=) Insert Archiver                                       │
  5424.           │ (-) Delete Archiver                                       │
  5425.           └═══════════════════════════════════════════════════════════╛
  5426.           
  5427.           The above commands will be explained here:
  5428.           
  5429.           
  5430.           Archive name        - Enter the name of the archiver.
  5431.           Archive extension   - Enter the extension that this archiver
  5432.                                 produces.
  5433.           Use ZIP viewer      - This toggles the use of the Obv/2
  5434.                                 internal ZIP viewer. Only turn this on
  5435.                                 if the archiver is ZIP compatible.
  5436.           Swap for commands   - If you want the BBS to swap to DISK/EMS
  5437.                                 XMS before running archiver commands,
  5438.                                 turn this option on.
  5439.           Compression command - Place the command that the archive uses
  5440.                                 to compress files. %1 = Path and
  5441.                                 filename, and %2 = wildcard. (All of
  5442.                                 this will be filled in by the BBS.)
  5443.           Extraction command  - Place the command that the archive uses
  5444.                                 to extract files. %1 = Path and
  5445.                                 filename, %2 = wildcard, and %3 = Path
  5446.                                 to your work directory.
  5447.           View command        - Place the command that the archive uses
  5448.                                 to view files. You must force output to
  5449.                                 a file using DOS redirection commands,
  5450.                                 BUT you must do this using a batch file
  5451.                                 .  The file that contains the output
  5452.                                 from the archiver must be named
  5453.                                 ARCLIST.  and it must be in your work
  5454.                                 directory.  %1 = Path and filename, %2
  5455.                                 = wildcard, and %3 = path to your work
  5456.                                 directory. Here is an example batch
  5457.                                 file:
  5458.                                 @%2..\PKUNZIP.EXE -V %1>%2ARCLIST.
  5459.                                 See the example above if you don't
  5460.                                 understand how to redirect the output
  5461.                                 of the archiver.
  5462.           Make SFX command    - This is the command that the archive
  5463.                                 uses to create Self-Extracting (.EXE)
  5464.                                 archives. %1 = Path and filename, %2 =
  5465.                                 wildcard, and %3 = path to your work
  5466.                                 directory.
  5467.           Maximum Errorlevel  - Errorlevels above this # will be
  5468.                                 interpreted as a failed upload. #'s
  5469.                                 under this will be passed uploads.
  5470.                                 Due to PKZIP's -AV, you should make
  5471.                                 this option 1 for ZIP. Other archivers
  5472.                                 vary. See the archivers documentation
  5473.                                 on the errorlevels it passes on failed
  5474.                                 and passed archives.
  5475.           Add comment command - This is the command that the archive
  5476.                                 uses to add comments to the archive.
  5477.                                 Again, you must follow the above
  5478.                                 example of redirection with a batch
  5479.                                 file.  %1 = Path and filename, and %2 =
  5480.                                 Comment file.  You can setup this file
  5481.                                 in the CONFIG under System Options #2.
  5482.           Add files command   - This is the command that the archive
  5483.                                 uses to add additional files to an
  5484.                                 archive. %1 = Path and filename, and %2
  5485.                                 = the files to add to the archive. This
  5486.                                 also can be configured via System
  5487.                                 Options #2 in the CONFIG.
  5488.           Signature String    - This is the signature identification of
  5489.                                 the archiver. Each archiver has a
  5490.                                 certain ID string that it uses to
  5491.                                 identify archives that it made. For
  5492.                                 example, PKZIP puts a PK in the first
  5493.                                 two bytes of its files. This lets PKZIP
  5494.                                 know that any file with a PK in the
  5495.                                 first two bytes was created by PKZIP.
  5496.                                 If this ID changes, like in LHA, you
  5497.                                 can use a ? in the signature location
  5498.                                 to signify a wildcard. You MUST have
  5499.                                 other letters that the program can
  5500.                                 search for. DO NOT JUST PUT ? in the
  5501.                                 sig string! You must enter all of the
  5502.                                 signature ID's in HEX format. So, go
  5503.                                 into a hex editor, and find the
  5504.                                 signature and its location, then enter
  5505.                                 the string in HEX.
  5506.           Signature location   - This is the location in bytes of the
  5507.                                  starting location of the signature
  5508.                                  string.  So, if the first two letters
  5509.                                  of the archive are PK, then you'd put
  5510.                                  1 in this field.
  5511.           List prefix          - Many archivers use a certain charater
  5512.                                  when you want the program to read in a
  5513.                                  list of files from a textfile. IE: In
  5514.                                  PKZIP, you can ZIP a group of files
  5515.                                  that you specify in a textfile like
  5516.                                  this: PKZIP OBV2-210.ZIP
  5517.                                  @C:\OBV2\OBV2.LST  It will ZIP up all
  5518.                                  of the files in OBV2.LST. Well, as you
  5519.                                  can see, you had to preceed that file
  5520.                                  by a @. This @ is the list character.
  5521.                                  Enter the list character in this
  5522.                                  field.
  5523.           Checker Only         - This option should always be set
  5524.                                  to No for an archiver such as
  5525.                                  PKZIP, ARJ, LZH etc. If you want
  5526.                                  to add a program which is not an
  5527.                                  archiver to manipulate the files,
  5528.                                  then set this option to yes. An
  5529.                                  example of this would be a program
  5530.                                  that took the GIFspec of a file, and
  5531.                                  placed that information into a FILE_ID.DIZ
  5532.                                  which the BBS could import. Included with
  5533.                                  Oblivion/2 is support for SAUCE commenting
  5534.                                  standard. The program called SAUCEPAN.EXE
  5535.                                  will read the ansi, and create a FILE_ID.DIZ
  5536.                                  according to a sysop-specified template.
  5537.                                  This FILE_ID.DIZ will be imported after
  5538.                                  the program runs. The above 2 examples
  5539.                                  (GIFSpec, and SAUCE) are two times when
  5540.                                  the 'Checker Only' option should be set
  5541.                                  to yes. See the docs to SAUCEPAN for info
  5542.                                  on how to setup SAUCE with Oblivion/2.
  5543.           Add/Insert Archiver  - Self-Explanatory.
  5544.           
  5545.           
  5546.                       SECTION 17: GENERIC MENU CONFIGURATION
  5547.                       ──────────────────────────────────────
  5548.           
  5549.                Ever needed to complete that killer configuration, but
  5550.           you were missing one part. Which part could that be? You have
  5551.           your status screens, menu (MNU) files, prompts, strings. What
  5552.           else is there? The ANSI menus.
  5553.           
  5554.                ANSI menus can be used to give that final touch. What if
  5555.           you can't make them as good as other people? What if you
  5556.           don't want the ones available. What if you want a simple
  5557.           straightforward, no-nonsense menu set. What can you do?
  5558.           
  5559.                The answer is generic menus. Don't let the name fool
  5560.           you, these are more powerful than ANSI menus. You don't need
  5561.           to constantly edit these menus whenever you modify your menu
  5562.           commands. These will update themselves automatically.
  5563.           
  5564.                How do you make these generic menus? It's done simply by
  5565.           making a REPEAT ansi. This 3-part repeat ANSI will let the
  5566.           BBS automatically update the menus when a new command is
  5567.           added. (Read the section on making repeat ANSI files before
  5568.           you continue further.)
  5569.           
  5570.                Now that you're fimilar with the 3-part repeat ANSI
  5571.           method, lets make some generic menus. First, you'll need to
  5572.           know the MCI codes for theses screens. They are as follows:
  5573.           
  5574.           GENSRT.ANS  -- Generic Menu Template Start ANSI
  5575.             MCI Code: |MT  -- Menu Title
  5576.           GENMID.ANS  -- Generic Menu Template Middle ANSI
  5577.             MCI Code: |K?  -- Keys for option ? in the line
  5578.             MCI Code: |D?  -- Description for option ? in the line
  5579.           GENEND.ANS  -- Generic Menu Template End ANSI
  5580.           
  5581.                Now, if you'd read the section on making repeat ANSIs,
  5582.           this should be really easy for you. If not, go back and read
  5583.           them! The first ansi GENSRT.ANS is pretty straightforward. So
  5584.           is the last one, GENEND.ANS. The middle ANSI, GENMID.ANS
  5585.           needs a little explaining.
  5586.           
  5587.                Before you can edit the GENMID.ANS file, you should
  5588.           decide how many options you want per column in your generic
  5589.           menus. This is a CONFIG option under System Configuration #2.
  5590.           The limits are 1-9. After you've entered this #, you're ready
  5591.           to make a set of generic menus.
  5592.           
  5593.                The two pipe codes |Kx, and |Dx that make up the
  5594.           GENMID.ANS file are very simple. One prints the KEY, and the
  5595.           other prints the DESCRIPTION. Say you wanted to make a
  5596.           generic menu set that had 3 columns, and 5 options per row.
  5597.           
  5598.                First, you'll need to go into the CONFIG, and set that #
  5599.           of lines option to 5. (This option was discussed about 2
  5600.           paragraphs above.) Next, edit the GENMID.ANS file. Place your
  5601.           MCI codes in a simple fashion like this:
  5602.           
  5603.           [|K1] |D1             [|K2] |D2               [|K3] |D3
  5604.           
  5605.           With an arrangement like this, your generic menu will look
  5606.           something like this.
  5607.           
  5608.           [1] Option #1         [2] Option #2           [3] Option #3
  5609.           [4] Option #4         [5] Option #5           [6] Option #6
  5610.           (And so on for 5 total lines. This menu would fit a maximum
  5611.            of 15 total options. 3 columns x 5 rows)
  5612.           
  5613.                As you can see making these menus is quite simple. Now,
  5614.           after you've made your menus, you have a few choices of where
  5615.           to put them. You can code the menu into a status screen
  5616.           library, or you can code it into a menu library.
  5617.           
  5618.                If you wish to code it into a status screen library,
  5619.           include the GENxxx.ANS files in your temp directory, and
  5620.           STATCODE.EXE will automatically include them in the completed
  5621.           LIB/NDX files.
  5622.           
  5623.                If you want to code the generic menus into a menu
  5624.           library of their own, you'll need to add a commandline option
  5625.           to menu code. This option, /G, will code generic menus into a
  5626.           menu library file. An example commandline would be:
  5627.           
  5628.           MENUCODE.EXE OBV2 C:\TEMP\ /G
  5629.           
  5630.           This codes the OBV2.LIB file from the files found in
  5631.           C:\TEMP\. It will also code the GENxxx.ANS files in the temp
  5632.           directory.
  5633.           
  5634.                You also get another added feature when you code the
  5635.           generic menus through a menu library. You can override that
  5636.           config option we spoke of. (# of options per row). In our
  5637.           example, we had 5 options per row. Say that you wanted to
  5638.           change that to 3 options per row for this PARTICULAR set
  5639.           only. You'd do the following.
  5640.           
  5641.           MENUCODE.EXE 3OBV2 C:\TEMP\ /G
  5642.           
  5643.                The 3 before the rest of the library name told Obv/2
  5644.           that this generic menu set will be using 3 options per row.
  5645.           You can make that number anything between 1-9. This allows
  5646.           you to make differently styled menus and let the users
  5647.           select. Note that now your compiled library is called
  5648.           3OBV2.LIB and not simply OBV2.LIB.
  5649.  
  5650.                           SECTION 18: Functions of ANSI.SYS
  5651.                           ─────────────────────────────────
  5652.           
  5653.           The ANSI escape codes for screen control supported by the MS-DOS
  5654.           ANSI.SYS device are a subset of the ANSI 3.64-1979 standard.
  5655.           They are used by Oblivion/2 to manipulate screen information,
  5656.           primarily cursor position and color changes.
  5657.           
  5658.           An escape code consists of two segments of data: (1) an identifier
  5659.           (the esc[ part, esc being the ASCII char AltGr-27 or 1Bh) and (2)
  5660.           the control code, the actual command to perform on the cursor or
  5661.           screen. Thus, all ANSI codes begin with esc[ and end with a code.
  5662.           All codes supported by ANSI.SYS are listed below, the identifier
  5663.           included, with a short description of it's use.
  5664.           
  5665.           Note that case is significant for the last character in an
  5666.           escape sequence and that numbers must always be represented as
  5667.           ASCII digit strings, not as their binary values. Also note,
  5668.           that cursor positions are one-based, making 1,1 upper left corner
  5669.           (and not 0,0). (A separate set of escape sequences supported by
  5670.           ANSI.SYS, but not compatible with the ANSI standard, may be used
  5671.           for reprogramming and remapping the keyboard. These are not
  5672.           supported by Oblivion/2).
  5673.           
  5674.           ================================================================
  5675.           Escape
  5676.           Sequence:       Meaning:
  5677.           ================================================================
  5678.           Esc[2J          Clear screen. Place cursor in upper left corner
  5679.                           (home position).
  5680.           Esc[K           Clear from cursor to EOL.
  5681.           ----------------------------------------------------------------
  5682.           Esc[row;colH    Position cursor. (Row is the y coordinate in the
  5683.                           range of 1-25 and col is the x coordinate in the
  5684.                           range of 1-80 for 80-by-25 text display modes).
  5685.                           Escape sequences terminated with the letter f
  5686.                           instead of H have the same effect. (Esc[H will
  5687.                           home cursor).
  5688.           *NOTE*          Since ANSI.SYS doesn't support go to X column in
  5689.                           current row, and thus TheDraw doesn't add that
  5690.                           code in, Obv/2 uses it's own. Esc[;xxH should go
  5691.                           to XXth column in first row, but for middle in
  5692.                           the repeat ansis (and only middle in the repeat
  5693.                           ansis), it goes to the XXth column in the current
  5694.                           row. You therefore need to edit your repeat ansi
  5695.                           in an ascii editor when you've finished the
  5696.                           middle part. See the section about repeat ansis
  5697.                           for more information.
  5698.           -----------------------------------------------------------------
  5699.           Esc[nA          Move cursor up n rows.
  5700.           Esc[nB          Move cursor down n rows.
  5701.           Esc[nC          Move cursor right n rows.
  5702.           Esc[nD          Move cursor left n rows.
  5703.           Esc[s           Save current cursor position.
  5704.           Esc[u           Restore cursor to saved position.
  5705.           Esc[6n          Return current cursor position on the standard
  5706.                           input handle in the format esc[row;colR.
  5707.           -----------------------------------------------------------------
  5708.           Esc[nm          Select character attributes (values for n):
  5709.                           0=no special attibutes
  5710.                           1=high intensity
  5711.                           2=low intensity
  5712.                           3=italic
  5713.                           4=undeline
  5714.                           5=blink
  5715.                           6=rapid blink
  5716.                           7=reverse video
  5717.                           8=concealed text (no display)
  5718.                           30=foreground black
  5719.                           31=foreground red
  5720.                           32=foreground green
  5721.                           33=foreground yellow
  5722.                           34=foreground blue
  5723.                           35=foreground magenta
  5724.                           36=foreground cyan
  5725.                           37=foreground white
  5726.                           40=background black
  5727.                           41=background red
  5728.                           42=background green
  5729.                           43=background yellow
  5730.                           44=background blue
  5731.                           45=background magenta
  5732.                           46=background cyan
  5733.                           47=background white
  5734.           =================================================================
  5735.           Esc[=nh         Select display mode (values for n):
  5736.                           0=40-by-25, 16-color text (color burst off)
  5737.                           1=40-by-25, 16-color text
  5738.                           2=80-by-25, 16-color text (color burst off)
  5739.                           3=80-by-25, 16-color text
  5740.                           4=320-by-200, 4-color graphics
  5741.                           5=320-by-200, 4-color graphics (color burst off)
  5742.                           6=620-by-200, 2-color graphics
  5743.           -----------------------------------------------------------------
  5744.                           14=640-by-200, 16-color graphics (EGA and VGA)
  5745.                           15=640-by-350, 2-color graphics (EGA and VGA)
  5746.                           16=640-by-350, 16-color graphics (EGA and VGA)
  5747.                           17=640-by-480, 2-color graphics (MCGA and VGA)
  5748.                           18=640-by-480, 16-color graphics (VGA)
  5749.                           19=320-by-200, 256-color graphics (MCGA and VGA)
  5750.                           Escape sequences terminated with l instead of h
  5751.                           have the same effect.
  5752.           -----------------------------------------------------------------
  5753.           Esc[=7h         Enable line wrap.
  5754.           Esc[=7l         Disable line wrap.
  5755.           =================================================================
  5756.           ASCII Bell      ^G
  5757.           -----------------------------------------------------------------
  5758.           Esc[#;string;p  Reassign a "string" or another value to a key.
  5759.           The first # or esc[#;#p     can be also written as 0;# for
  5760.           extended ASCII key codes.
  5761.           =================================================================
  5762.  
  5763.                              SECTION 19 - SETTING UP WITH OS/2
  5764.                              ─────────────────────────────────
  5765.            ABOUT OS/2
  5766.            ----------
  5767.  
  5768.            OS/2 is probably the best operating system available,
  5769.            whether for running DOS, Windows or OS/2 applications.
  5770.            It gives you superb multitasking, while still being
  5771.            easy to use and setup. However, the default configura-
  5772.            tion provided by IBM may not be the best for your
  5773.            system, and you can probably gain in performance by
  5774.            changing a few things.  This chapter is divided into
  5775.            four parts, each covering their own topic:
  5776.               The first is an introduction to OS/2 for those still
  5777.            using DV (either loving or hating it) - when and why
  5778.            they should consider upgrading to OS/2.
  5779.               The second is a collection of tips and tricks I have
  5780.            learned through using OS/2 for a long time, as well as
  5781.            a guide to optimizing your system for performance.
  5782.               The third is a list of utilities for OS/2 - what
  5783.            they offer you, and how you use/install them.
  5784.               The fourth and last part is specifically dedicated
  5785.            to running a bbs and a mailer under OS/2 - a few
  5786.            last words on the experiences I have made while
  5787.            running a BBS under OS/2.
  5788.  
  5789.  
  5790.            1: About OS/2
  5791.            -------------
  5792.            First, let's make sure you aren't wasting your time.
  5793.            In order to use OS/2 (as opposed to just looking at
  5794.            it or waiting for it), you need a 386dx40 with 8mb
  5795.            ram. Dont install OS/2 if you have less ram - it's
  5796.            well worth the money for some extra ram, and you're
  5797.            going to need 8mb ram anyways in case you consider
  5798.            running Chicago when that arrives late 1995 <g>.
  5799.               In general, ram is more important to OS/2 than
  5800.            cpu - I'd choose a 486sx20 with 16mb over a 486dx2
  5801.            with 8mb any time.
  5802.  
  5803.            Why should you install OS/2 in the first place?
  5804.               First, there's the multitasking.  Since you're a
  5805.            sysop, wouldnt you like to browse the networks while
  5806.            a user was online - or zip those private files for
  5807.            the online user, without shelling to dos.  Ofcourse,
  5808.            formatting those 50 disks and 10 tapes you just bought
  5809.            is much less time consuming in the background.
  5810.            Processing a lot of mail? - you just run GEcho in
  5811.            the background when you get a mail call. A future
  5812.            version of Oblivion/2 may support background upload
  5813.            checking, so your users can continue being online while
  5814.            Obv/2 processes their uploads!  You get the point :)
  5815.  
  5816.            But you can do all that under DesqView, no need for
  5817.            you to switch from your current system. Or?
  5818.               You'll gain memory management like you've never
  5819.            dreamed possible. No matter how many device drivers
  5820.            you load, they will eat 0 bytes low DOS memory, so you
  5821.            always end up with around 640kb largest executable
  5822.            program size. I'd say that's fairly nice. It's one of
  5823.            the advantages of the DOS running under OS/2 being
  5824.            100% emulated.
  5825.               As opposed to DV, if you run a nasty application
  5826.            and it crashes/hangs, you simply close it and start
  5827.            a new task - it wont crash the whole system. That's
  5828.            very valuable when testing task settings or testing
  5829.            a fragile product.
  5830.               Another valuable addition is virus, ansi bomb
  5831.            and trojan protection through omitting certain
  5832.            functions from the DOS emulation. Direct sector-
  5833.            writes are not allowed, and if you try to format
  5834.            a drive you are asked for additional confirmations,
  5835.            not just (y/N). That gives protection from almost
  5836.            anything, except ViSiON-X <G>.
  5837.  
  5838.            You hate that graphical user interface (GUI) - it has to
  5839.            be much slower and complicated to use than good old DOS?
  5840.               Look out your window at that car passing by. Was that
  5841.            a yellow sports-car or was it a SUPRA G9/XLi?  Pictures
  5842.            are much easier to remember, and you can customize your
  5843.            OS/2 desktop in every aspect. Colors, folders (they're
  5844.            like directories under DOS), icons, and much more (far
  5845.            too detailed to put here).  Do you use Norton Commander?
  5846.            That's one way of simplifying commands and putting up an
  5847.            easier interface for accessing your files. OS/2's GUI is
  5848.            but a step further up the interface.
  5849.               Dont be mistaken though, you're not replacing your
  5850.            prompt and putting a shell around your computer.  OS/2
  5851.            doesnt turn your PC into a MAC - you simply press enter
  5852.            or double-click an icon, and you're back where you feel
  5853.            home.  You arent loosing anything, thus you can only be
  5854.            gaining - right? :)
  5855.  
  5856.  
  5857.            2: Optimizing OS/2
  5858.            ------------------
  5859.            This section assumes you know OS/2 and how to get from the
  5860.            desktop into the different settings and configuration menus.
  5861.            If you dont, read whatever comes with OS/2 (I havent seen
  5862.            the 2.1 manuals :), and it will most likely tell you how
  5863.            you do this.
  5864.  
  5865.               As you will have noticed, in the menu where you specify
  5866.            whether a task is to be DOS or OS/2, Full-screen or window,
  5867.            there is no OS/2_Settings button next to the DOS_Settings.
  5868.            That is because OS/2 tasks figure this out on their own -
  5869.            they are written to work with OS/2 and dont need to be
  5870.            customized like DOS programs. Thus, this section will only
  5871.            explain settings related to DOS programs.
  5872.  
  5873.            Lets take a look at your CONFIG.SYS - here's a few tips
  5874.            on setting it up correctly:
  5875.  
  5876.               IFS=F:\OS2\HPFS.IFS /CACHE:1024 /CRECL:64 /AUTOCHECK:DEF
  5877.            This line determines the cache size for HPFS, OS/2's file-
  5878.            system. Unless you're using OS/2 only, and never booting
  5879.            DOS, I suggest you have at least 10mb ram before
  5880.            considering HPFS. It is faster on big drives, but will eat
  5881.            too much ram if you have only 6 or 8mb. If you have no
  5882.            HPFS drives at all, make sure this line isnt present or
  5883.            contains a REM to disable it.
  5884.               BASEDEV=IBM1S506.ADD /A:0 /U:0 /SMS /V
  5885.            This one is your IDE/AT-BUS device driver. The above will
  5886.            boost performance on drive 1 in your system, in case it
  5887.            supports SMS.  Look up BASEDEV for more information on this.
  5888.               SET AUTOSTART=TASKLIST,FOLDERS,CONNECTIONS
  5889.            Remove PROGRAMS from this line, or you may end up with a
  5890.            loop crashing your system.
  5891.               SET COMSPEC=F:\OS2\CMD.EXE
  5892.            Normally you dont have an autoexec.cmd file when starting
  5893.            OS/2 programs. Adding "/K AUTO.CMD" will run AUTO.CMD
  5894.            every time you start an OS/2 task.
  5895.               SET DELDIR=
  5896.               REM SET DELDIR=C:\DELETE,512;E:\DELETE,2048;
  5897.            OS/2 handles deleted files by copying them into a
  5898.            directory specified here. Turning off the delete directory
  5899.            as done in line 1, severely speeds up delete time as OS/2
  5900.            doesnt copy/move your file(s) to the delete directory.
  5901.            Instead of using DELDIR you should install GammaTools,
  5902.            please see section 3 (utilities) for more on this.
  5903.                SET DPATH=F:\OS2;F:\OS2\SYSTEM;...
  5904.            This is NOT your DOS path, as one is led to believe
  5905.            through the name. DPATH is your data path, and you seldom
  5906.            need to edit this yourself. LIBPATH is you library path,
  5907.            and it is wise to add a directory to that where you store
  5908.            DLL's from installed programs, so as not to mix them up
  5909.            with OS/2's own DLL files. Finally, PATH is your OS/2 path
  5910.            and here goes the path to your OS/2 batch directory (*.CMD
  5911.            files), utility directories, etc.  Use the autoexec files
  5912.            to set your DOS path.
  5913.               SET OS2_SHELL=F:\OS2\CMD.EXE
  5914.            That "/K AUTO.CMD" might be for this line, I'm not using
  5915.            it myself :-)  Experiment, and tell me ;)
  5916.               SET PROMPT=[$p]
  5917.            To get rid of that help line OS/2 has, remove "$i" from
  5918.            your prompt line.
  5919.               PRIORITY_DISK_IO=NO
  5920.            Give the foreground task priority in disk I/O?  Since
  5921.            you're running a BBS setting it to NO will give better
  5922.            disk access for upload checking or searching, while you
  5923.            may feel a slowdown in your current task. The slower
  5924.            your computer is, the more you'd probably want to put
  5925.            it to YES.
  5926.               THREADS=128
  5927.            A program can branch off a thread - it's the way to do
  5928.            multiple things at once within the same program. Unless
  5929.            you're doing a lot of work, you can reduce the default
  5930.            to 128 and save some RAM. Read section 3 (PM Patrol) to
  5931.            find out how you can monitor active number of threads.
  5932.               AUTOFAIL=YES
  5933.            Removes those ugly big-screen error messages when you
  5934.            fx access a floppy drive w/o a disk inserted. Instead,
  5935.            OS/2 simply fails and reports "Drive A: not ready".
  5936.               DISKCACHE=512,LW,64,AUTOCCHECK:C
  5937.            This is for FAT formatted drives only. LW enables Lazy-
  5938.            Write; 64 is similar to the CRECL value in the HPFS
  5939.            statement, and determines how large chunks of files
  5940.            should be cached. The AUTOCHECK statement specifies
  5941.            which drives to check after a system crash (those
  5942.            forced by a reset or power loss). In general, make
  5943.            sure all drives are listed in your AUTOCHECK statements.
  5944.            Refer to your OS/2 manual for FAT cache sizes - remove
  5945.            it if you have no FAT drives at all - and _DONT_ install
  5946.            an external cache.
  5947.               SWAPPATH=F:\ 2048 8192
  5948.            This is where your swapfile resides, how much space
  5949.            should be left on the drive where it resides before OS/2
  5950.            alerts you of low disk space, and how large it should be
  5951.            initially. Specifying the root of a drive speeds up
  5952.            performance a weeny bit, but that's for the fanatics
  5953.            like me :)  Specifying too small a value for the swap
  5954.            file size will make OS/2 continually work on keeping the
  5955.            swap file within the limits you specify, causing overall
  5956.            performance to drop. A good rule of thumb is to set the
  5957.            size = ( 20 - xx mb ram installed).  I have 16mb, and have
  5958.            an 8mb swap file - 4 would probably suffice, but I dont
  5959.            mind the space for the gain in performance.
  5960.               RMSIZE=640
  5961.            If you want to use the MODE_RESTRICTION=CGA setting found
  5962.            in the DOS_Settings, you should set this to 639 (kb)
  5963.            instead, as a bug in OS/2 2.10 turns off that options
  5964.            when 640 is specified. Not all programs like CGA to be
  5965.            off, but it will give you another 96kb low DOS memory,
  5966.            and could be useful in some cases. It is similar to the
  5967.            QEMM STEALTH option, if I recall correctly.
  5968.               DEVICE=C:\OUTIL\FOSSIL\SIO.SYS (COM1:38400,3F8,IRQ4,,F)
  5969.            Replace COM with SIO (Serial I/O drivers), they are much
  5970.            better and they also provide a fossil for use in DOS boxes
  5971.            under OS/2. They are written by the author of X00 - read more
  5972.            in section 3 about SIO.
  5973.               DEVICE=F:\OS2\VDISK.SYS 512,,
  5974.            A ram disk such as this is useful for swap files and
  5975.            temporary packets such as created by InterMail. Use only
  5976.            if you have enough ram!
  5977.               DOS=HIGH,UMB
  5978.            Make sure you change that default LOW,NOUMB into
  5979.            HIGH,UMB to get more DOS memory. I wonder what IBM was
  5980.            thinking when they made LOW,NOUMB default!
  5981.               DEVICE=C:\OUTIL\FOSSIL\VSIO.SYS
  5982.            SIO again - this is the VCOM replacement.
  5983.               DEVICEHIGH=F:\OS2\MDOS\ANSI.SYS
  5984.            All those nice DOS devices - just put a DEVICEHIGH
  5985.            instead of DEVICE and you might gain an extra kb or two
  5986.            in DOS memory. I am using this, and it certainly won't make
  5987.            your system crash, but I can't vouch for the memory gain.
  5988.  
  5989.            Further, you can speed up your boot time by sorting the
  5990.            commands in your config.sys.  Beware of doing this, as
  5991.            OS/2 will refuse to boot if you make a mistake, and the
  5992.            order in which to sort may not seem 100% clear (it's NOT
  5993.            A-Z!).  But there is a lot to gain (I went from 45 to 30
  5994.            seconds boot time!) by doing it. Grab the file called
  5995.            CFGSRT11.ZIP off your local PD OS/2 board, or do it as
  5996.            in my config.sys, which should be included in the Obv/2
  5997.            package. But be careful and have a backup ready.
  5998.            
  5999.            Next, lets take a quick look at the "DOS Settings",
  6000.            which is your way of customizing every single DOS task
  6001.            to it's specific needs and 'bugs'. I shall do this like
  6002.            the config, and only comment those worth commenting:
  6003.  
  6004.               DOS_AUTOEXEC       [F:\AUTO_BBS.BAT]
  6005.            Specify a different one for every task is a good way of
  6006.            customizing your DOS task, regarding environments,
  6007.            doskey, command processor (4DOS), etc...
  6008.               DOS_BACKGROUND_EXECUTION        [ON]
  6009.            Leave on for the BBS, but off for TheDraw or SimCity,
  6010.            as they shouldnt use any cpu when you're not in that task.
  6011.               DOS_DEVICE      [C:\FOSSIL\VX00.SYS]
  6012.            This is the fossil driver for DOS, found in the SIO
  6013.            package. Be sure to load it in every task using com
  6014.            ports, and don't use X00 as VX00 was written specifically
  6015.            for DOS under OS/2.  A good tip is to write "SIZE=0 "
  6016.            before the actual device driver - and it will use no
  6017.            DOS memory.
  6018.               DOS_STARTUP_DRIVE               []
  6019.            Having problems making a program work?  Use VMDISK to
  6020.            create a DOS image file, from which you can boot (fx
  6021.            [DOS.IMG] would boot from a file called DOS.IMG).  It
  6022.            makes your task just like a real DOS, you can also
  6023.            specify fx [C:] in the brackets, causing you to boot
  6024.            from your C: drive (while running OS/2 ofcourse :)
  6025.               DOS_VERSION  [C:\DOS\FORMAT.COM,6,20,255]
  6026.            The format command of OS/2 doesnt support the /Q switch
  6027.            - using DOS_VERSION you can make all the nasty MSDOS
  6028.            utils work too.
  6029.               HW_TIMER                    [OFF]
  6030.            Hardware timer - unless you want that yeller Obv/2 has
  6031.            to go bananas you should turn this on, although it may
  6032.            decrease performance a bit. I'm not sure :-)
  6033.               IDLE_SECONDS                 [0]
  6034.            Specifies the amount of time a program has to be idle
  6035.            before OS/2 will quench it's cpu usage - this is useful
  6036.            in making keyboard polling programs use less or no cpu.
  6037.            In most cases a setting of 0 will be best, although I
  6038.            recommend 2-3 for your BBS task - you wouldnt want OS/2
  6039.            to take back cpu at a critical moment when your modem
  6040.            re-negotiates.
  6041.               IDLE_SENSITIVITY             [50]
  6042.            This is _THE_ setting of them all to optimize your
  6043.            system. Set it to at least 40 for your bbs task, or
  6044.            higher if your computer isnt at least a 486dx ;)
  6045.            Reduce to 1 on programs doing nothing mission
  6046.            critical but stealing all of your cpu - this goes for
  6047.            programs like Borland Pascal, TheDraw, Norton Commander
  6048.            or Boomer's Utils.  Set it to 100 on sensitive programs
  6049.            such as CP Backup (which tolerates almost nothing). Use
  6050.            PM Patrol (see section 3) to determine the correct
  6051.            setting for a specific program.
  6052.               VIDEO_XXX
  6053.            All the VIDEO setting need only be changed when you run
  6054.            a game or similar thing - the defaults are okay for
  6055.            your plain DOS tasks.
  6056.  
  6057.            And finally, all kinds of extra tricks about OS/2 -
  6058.            either performance or usage related, in no special
  6059.            order:
  6060.            - Turn animation and progress indication off - they're
  6061.              just slowing down your system.  Dont install a
  6062.              picture as a background, it will eat about 1mb
  6063.              valuable memory and use a lot of extra cpu in usage.
  6064.            - Putting programs in the startup folder causes them
  6065.              to start at boot. You can control the sequence by
  6066.              making the startup folder "flowed" and adding the
  6067.              icons in a FIFO way (first in, first out).
  6068.            - Remove unused DOS device drivers from your
  6069.              CONFIG.SYS.  Those will usually be the CD-ROM driver
  6070.              or the HPFS cache.
  6071.            - To save space on your boot drive, you can delete all
  6072.              MCA drivers. They can be recognized by two files having
  6073.              the same name except for a digit which will be either
  6074.              1 or 2.  For example, IBMxFLPY.ADD.  The 2 files are
  6075.              only for MCA machines.
  6076.            - Changing resolution can be a pain if OS/2 does not
  6077.              detect your hardware correctly.  After a boot your
  6078.              screen will be out of sync, and you can see nothing.
  6079.              (A) Boot OS/2 from floppy, go to your boot drives \OS2
  6080.                  directory and run "SETVGA X:" (X being your drive
  6081.                  letter). This restores your mode to the default.
  6082.              (B) Delete the file called SVGADATA.PMI in your \OS2
  6083.                  directory and reboot. This may only work for standard
  6084.                  cards such as TSENG, but it worked for me, and you
  6085.                  can always use (A) to restore whatever you've
  6086.                  messed up.
  6087.            - Put "[]" in the parameter field of a task and it will
  6088.              ask you for parameters on execution.  Good for a virus-
  6089.              scanner or defragger. Any text you put between the
  6090.              brackets will be displayed to you when OS/2 prompts
  6091.              for the parameter.
  6092.            - When you change settings for your tasks OS/2 often
  6093.              'forgets' your icon.  Just click the UNDO button in the
  6094.              'General' settings, and it'll be back.
  6095.            - Deleting undeletable objects: Move the file onto a
  6096.              floppy drive by dragging it there, then format the
  6097.              floppy.
  6098.            - Using && and || on your command-line.  Fx. "COPY *A*
  6099.              C:\ && DEL *A*" will only execute the DEL command if
  6100.              COPY was succesful. Using || would make DEL execute
  6101.              only if COPY failed. Powerful, but simple.
  6102.  
  6103.  
  6104.            3: Utilities
  6105.            ------------
  6106.            (SIOxxx.ZIP)
  6107.            First, let's get SIO installed. The worst part about SIO
  6108.            are the settings you need to setup in DOS_Settings - they
  6109.            have no description and thus you have no clue what you're
  6110.            working on. SIO is wonderful, but it can also make your
  6111.            system crash every now and then if configured incorrectly.
  6112.            The following is a list of the settings I use - they are
  6113.            certified to work with HS/Link which was a problem in the
  6114.            default configuration. Here goes:
  6115.               SIO_Idle_Sensitivity               [100]
  6116.            DONT change this - it made my system hang ever so often.
  6117.            Last time I tested was version 1.24 though.
  6118.                _Mode_DTR                 [No change..]
  6119.                _Mode_FIFO_Load_Count              [16]
  6120.                _Mode_IDSR                   [Ignore..]
  6121.                _Mode_OCTS   [..RTS/CTS or Ignore/None]
  6122.                _Mode_ODSR   [..DTR/DSR or Ignore/None]
  6123.                _Mode_RTS                 [No change..]
  6124.                _Mode_XON/XOFF          [No XON/XOFF..]
  6125.                _Sync_Kludge                      [Off]
  6126.                _Share_Access_With_OS/2           [Off]
  6127.                _Virtual*                          [On]
  6128.            Also, make sure you have an 16550A UART on your serial
  6129.            port, if you use 9600 or higher.
  6130.  
  6131.            (GAMMAxx.ZIP)
  6132.            Next, GammaTools. They feature a lot of good utilities
  6133.            for OS/2, such as Defrag, SectorEd, Undelete, etc..
  6134.            Fairly poor coding but they do what they were made to
  6135.            do, which is the important part.
  6136.  
  6137.            (EXDESK.ZIP)
  6138.            Get EXDESK - it adds a grid option to your desktop so
  6139.            you can align your icons a bit nicer. It also removes
  6140.            "arrange" from your dekstop-menu, which really makes
  6141.            this program a must.
  6142.  
  6143.            (PMPxxx.ZIP)
  6144.            PM Patrol is a status bar for your desktop, showing all
  6145.            you need to know about your system in a compact way -
  6146.            cpu/memory usage, drive info, swapfile size, processes,
  6147.            threads and windows open, and much more..
  6148.  
  6149.            (MNICON.ZIP)
  6150.            A utility adding drag'n'drop capability to your icon
  6151.            files, making it easy to assign new icons to your programs.
  6152.  
  6153.            (WPSBKxxx.ZIP)
  6154.            Creates a backup of your desktop, so you restore it the
  6155.            day you change to another version oredition of OS/2, or
  6156.            out of some other reason have messed your setup.
  6157.  
  6158.            (AMOSxxx.ZIP)
  6159.            AMOS is a program to access your HPFS drives from native
  6160.            DOS - this is extremely helpful if you need to edit your
  6161.            config.sys and you dont want to boot from the install
  6162.            disks.  Further AMOS can rescue your data the day OS/2
  6163.            wont boot and your data reside on HPFS volumes.
  6164.  
  6165.            (HSTARTxx.ZIP)
  6166.            A replacement to the OS/2 start command, so you can start
  6167.            a new task from another DOS task. This is how I do my mail
  6168.            tossing in the background:
  6169.            HSTART /DOS /FS /B /C C:\BATCH\GTOSS.BAT
  6170.            Look in the HSTART docs for details.
  6171.  
  6172.  
  6173.            4: Running a BBS under OS/2
  6174.            ---------------------------
  6175.            Generally you can put all DOS programs into three
  6176.            categories:
  6177.            1 - Those supporting OS/2 by slicing in an OS/2
  6178.                friendly way. These will use no cpu when idle and
  6179.                only as much as they need when being used. HS/Link
  6180.                is a fabulous example, as it will eat no more than
  6181.                5% of your cpu when a user is transferring files!
  6182.            2 - Those whose slicing can be detected by OS/2, and
  6183.                quenched according to the values specified in the
  6184.                IDLE SECONDS and IDLE SENSITIVITY settings. Most
  6185.                programs with standard program loops can be
  6186.                detected. They will use more cpu than they need
  6187.                when in use, but almost nothing when idle. A good
  6188.                example is TheDraw, which is 'tamed' completely
  6189.                through the IDLE settings.
  6190.            3 - Those who either require all available cpu or using
  6191.                non-standard loops for polling the keyboard. An
  6192.                example is GSZ, which uses 100% cpu for the same
  6193.                transfer HS/Link can do using only 5% of the total cpu.
  6194.  
  6195.             A lot can be gained by testing this, and replacing the
  6196.             poorly behaving programs with alternatives supporting
  6197.             OS/2. Up to version 2.10 of Oblivion/2 it was in the 3rd
  6198.             category, using all available cpu for polling the
  6199.             keyboard. As of version 2.20 this has changed, and
  6200.             Oblivion/2 is now a much more OS/2 friendly program - it
  6201.             will be much easier running multiple nodes under OS/2
  6202.             with the new version, and you can run at least 3-4 nodes
  6203.             on a single machine without any problems.  A later
  6204.             version of Oblivion/2 will include additional support,
  6205.             such as turning off local screen display, background
  6206.             upload processing and maybe even background transfers :-).
  6207.             
  6208.             Using a mailer under OS/2 is equal to running a bbs -
  6209.             a well behaved program will eat much less of your
  6210.             valuable resources. InterMail and FrontDoor are very
  6211.             much alike, yet IM is a much better behaved application.
  6212.             In comparison, IM will use between 0% and 20% cpu in idle
  6213.             mode, while FD will clog your system and use whatever
  6214.             it can get. Althogh newer versions of FD may have
  6215.             improved, I would still recommed IM over FD.
  6216.  
  6217.             In short, use the cpu monitoring program PM Patrol
  6218.             whenever possible to determine if a program is well
  6219.             behaved or you should go look for an alternative.
  6220.             
  6221.             REM ***********************************************************
  6222.             REM ******      OS/2 v2.10 - Optimized CONFIG.SYS - Feb 2, 1994
  6223.             REM ***********************************************************
  6224.  
  6225.  
  6226.             REM ***********************************************************
  6227.             REM IFS's
  6228.             REM ***********************************************************
  6229.             IFS=F:\OS2\HPFS.IFS /CACHE:1024 /CRECL:64 /AUTOCHECK:EF
  6230.             REM IFS=F:\OS2\SUBSTFSD.IFS
  6231.  
  6232.  
  6233.             REM ***********************************************************
  6234.             REM BASEDEV's
  6235.             REM ***********************************************************
  6236.             BASEDEV=OS2DASD.DMD /Q
  6237.             BASEDEV=PRINT01.SYS
  6238.             BASEDEV=IBM1FLPY.ADD
  6239.             BASEDEV=IBM1S506.ADD /A:0 /U:0 /SMS /V
  6240.  
  6241.  
  6242.             REM ***********************************************************
  6243.             REM SET statements      [sorted alphabetically, to look nicer]
  6244.             REM ***********************************************************
  6245.             PROTSHELL=F:\OS2\PMSHELL.EXE
  6246.             SET AUTOSTART=TASKLIST,FOLDERS,CONNECTIONS
  6247.             SET BOOKSHELF=F:\OS2\BOOK;
  6248.             SET COMSPEC=F:\OS2\CMD.EXE
  6249.             SET DELDIR=
  6250.             REM SET DELDIR=C:\DELETE,512;E:\DELETE,2048;
  6251.             SET DPATH=F:\OS2;F:\OS2\SYSTEM;F:\OS2\INSTALL;F:\;F:\OS2\BITMAP;
  6252.             F:\OS2\MDOS;F:\OS2\APPS;
  6253.             REM SET EPMPATH=F:\OS2\APPS;
  6254.             SET GLOSSARY=F:\OS2\HELP\GLOSS;
  6255.             SET HELP=F:\OS2\HELP;
  6256.             SET IPF_KEYS=SBCS
  6257.             SET KEYS=ON
  6258.             SET OS2_SHELL=F:\OS2\CMD.EXE
  6259.             SET PATH=F:\OS2;F:\OS2\SYSTEM;F:\OS2\INSTALL;C:\CMD;F:\;
  6260.             F:\OS2\MDOS;F:\OS2\APPS;C:\OUTIL\TOOLS;C:\OUTIL\PACK;C:\OUTIL\Q;
  6261.             SET PROMPT=[$p]
  6262.             SET RUNWORKPLACE=F:\OS2\PMSHELL.EXE
  6263.             SET SYSTEM_INI=F:\OS2\OS2SYS.INI
  6264.             SET USER_INI=F:\OS2\OS2.INI
  6265.             SET VIDEO_DEVICES=VIO_SVGA
  6266.             SET VIO_SVGA=DEVICE(BVHVGA,BVHSVGA)
  6267.  
  6268.  
  6269.             REM ***********************************************************
  6270.             REM OS/2 specific commands      [protectonly, etc]
  6271.             REM ***********************************************************
  6272.             LIBPATH=.;F:\OS2\DLL;F:\OS2\MDOS;F:\;F:\OS2\APPS\DLL;
  6273.             PRIORITY_DISK_IO=NO
  6274.             THREADS=128
  6275.             AUTOFAIL=YES
  6276.             DISKCACHE=512,LW,64,AC:C
  6277.             IOPL=YES
  6278.             MAXWAIT=2
  6279.             MEMMAN=SWAP,COMMIT,PROTECT
  6280.             PRIORITY=DYNAMIC
  6281.             SWAPPATH=F:\ 2048 8192
  6282.             REM TIMESLICE=60,125
  6283.             PRINTMONBUFSIZE=0,0,0
  6284.             PROTECTONLY=NO
  6285.             RMSIZE=640
  6286.             CODEPAGE=865
  6287.             COUNTRY=045,F:\OS2\SYSTEM\COUNTRY.SYS
  6288.  
  6289.  
  6290.             REM ***********************************************************
  6291.             REM OS/2 devices  [sorted alphabetically, where applicaple]
  6292.             REM ***********************************************************
  6293.             DEVINFO=KBD,DK,F:\OS2\KEYBOARD.DCP
  6294.             DEVINFO=SCR,VGA,F:\OS2\VIOTBL.DCP
  6295.             REM DEVICE=F:\OS2\TESTCFG.SYS
  6296.             DEVICE=F:\OS2\DOS.SYS
  6297.             DEVICE=F:\OS2\PMDD.SYS
  6298.             DEVICE=F:\OS2\MOUSE.SYS SERIAL=COM2 RELAXED
  6299.             DEVICE=F:\OS2\POINTDD.SYS
  6300.             DEVICE=C:\OUTIL\FOSSIL\SIO.SYS (COM1:38400,3F8,IRQ4,,F)
  6301.             REM DEVICE=F:\OS2\APPS\SASYNCDA.SYS
  6302.             DEVICE=F:\OS2\VDISK.SYS 512,,
  6303.  
  6304.  
  6305.             REM ***********************************************************
  6306.             REM DOS specific commands  [dos=high,umb, etc]
  6307.             REM ***********************************************************
  6308.             BREAK=ON
  6309.             BUFFERS=60
  6310.             DOS=HIGH,UMB
  6311.             FCBS=1,0
  6312.             REM FCBS=16,8
  6313.             FILES=60
  6314.  
  6315.  
  6316.             REM ***********************************************************
  6317.             REM DOS devices  [sorted alphabetically, where applicaple]
  6318.             REM ***********************************************************
  6319.             DEVICEHIGH=F:\OS2\MDOS\ANSI.SYS
  6320.             DEVICEHIGH=F:\OS2\MDOS\EGA.SYS
  6321.             DEVICEHIGH=F:\OS2\MDOS\VDPMI.SYS
  6322.             DEVICEHIGH=F:\OS2\MDOS\VDPX.SYS
  6323.             DEVICEHIGH=F:\OS2\MDOS\VEMM.SYS
  6324.             DEVICEHIGH=F:\OS2\MDOS\VMOUSE.SYS
  6325.             DEVICEHIGH=C:\OUTIL\FOSSIL\VSIO.SYS
  6326.             DEVICEHIGH=F:\OS2\MDOS\VXMS.SYS /UMB
  6327.             DEVICEHIGH=F:\OS2\MDOS\VSVGA.SYS
  6328.             SHELL=F:\OS2\MDOS\COMMAND.COM F:\OS2\MDOS
  6329.             REM RUN=C:\OUTIL\TOOLS\SUBSTHST.EXE
  6330.  
  6331.             REM ***********************************************************
  6332.  
  6333.  
  6334.                             SECTION 20: USING E-MAIL TAGS
  6335.                             ─────────────────────────────
  6336.  
  6337.                The E-Mail tag system is a powerful system that gives
  6338.           you extended control of your electronic mail. The tag system
  6339.           allows you to assign certain tags with certain types of email.
  6340.           For example, you could assign new user application mail a
  6341.           tag of 1. Then, you could give a user (other than the sysop)
  6342.           access to read mail with tag 1 (CoSysOp for example). Then,
  6343.           the CoSysOp would be able to validate new users. This system
  6344.           can be used for many other things. It's all up to your imagination.
  6345.  
  6346.                The system has 4 basic menu commands. They are as follows:
  6347.  
  6348.           E+ - Allows user to read all mail with specified tag.
  6349.                (Use the E$ and E# commands to set the Tag#)
  6350.           E- - Lets user see only mail addressed to him.
  6351.                (Puts things back to normal)
  6352.           E$ - Sets the incoming E-Mail tag to the value of CString.
  6353.                CString: 0-255  --  If CString = 0, user can see ALL
  6354.                mail regardless of tag.
  6355.           E# - Sets the outgoing E-Mail tag to the value of CString.
  6356.                CString: 0-255  -- If CString = 0, user can see ALL
  6357.                mail regardless of tag.
  6358.  
  6359.                This is how one would go about setting up the above example
  6360.           of allowing a cosysop to read the new user feedback.
  6361.  
  6362.           Step 1: Stack a E$ command with a CString of 1 before the
  6363.                   apply command at the matrix.
  6364.           Step 2: Stack a E$ command with a CString of 0 AFTER the
  6365.                   apply command at the matrix.
  6366.           Step 3: Add 2 commands to the E-Mail menu. The first being
  6367.                   E$ with a CString of 1. The second one should be
  6368.                   an E+ command. (These should be stacked together
  6369.                   Give them a certain key, so that your cosysop
  6370.                   will hit this key to read the new user mail.)
  6371.           Step 4: Add 2 commands to the E-Mail menu. The first
  6372.                   being E$ with a CString of 0. The second should
  6373.                   be an E-. (Stack these together, but make sure that
  6374.                   the key that you use is different than the key
  6375.                   that you used in Step 3. When the cosysop presses
  6376.                   this key, it will make it so that he reads his mail
  6377.                   normally (no new user mail).)
  6378.  
  6379.  
  6380.                The members of the Oblivion/2 team, and all Oblivion/2
  6381.           SysOps would like to thank you for your interest in
  6382.           Oblivion/2. I hope this documentation helped you resolve many
  6383.           of your problems with the BBS. Thank you for your support of
  6384.           Oblivion/2, the leader in telecommunications excellence!
  6385.